Add PrivateShop module templates and initial setup files
- Created restricted.tpl for displaying restricted access messages with customizable background options. - Added index.php files in hook and main template directories to prevent direct access and ensure proper redirection. - Implemented info.tpl to provide module information and support links, enhancing user experience with promotional content. - Included necessary CSS styles for the new templates to ensure proper layout and responsiveness.
95
modules/privateshoplite/views/css/authentication15.css
Normal file
@@ -0,0 +1,95 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license Copyrights FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
#account-creation_form {}
|
||||
|
||||
#account-creation_form fieldset {
|
||||
padding:0 0 15px 0;
|
||||
border:1px solid #ccc;
|
||||
background:#f8f8f8
|
||||
}
|
||||
#account-creation_form h3 {
|
||||
margin:0 0 15px 0;
|
||||
padding:8px;
|
||||
font-size:14px;
|
||||
color:#fff;
|
||||
text-transform:uppercase;
|
||||
background:url(../img/bg_form_h3.png) repeat-x 0 0 #989898
|
||||
}
|
||||
#center_column #account-creation_form p {margin:0; padding:0 0 10px 0}
|
||||
#account-creation_form p.required {color:#222}
|
||||
#account-creation_form p.required sup {color:#990000}
|
||||
|
||||
#account-creation_form p.radio span,
|
||||
#account-creation_form p.text label,
|
||||
#account-creation_form p.password label,
|
||||
#account-creation_form p.select label,
|
||||
#account-creation_form p.select span,
|
||||
#account-creation_form p.textarea label {
|
||||
display:inline-block;
|
||||
padding:6px 15px;
|
||||
width:210px;/* 260 */
|
||||
font-size:14px;
|
||||
text-align:right
|
||||
}
|
||||
#account-creation_form p.radio label {
|
||||
float:none;
|
||||
padding-right:10px;
|
||||
width:auto;
|
||||
font-size:14px
|
||||
}
|
||||
#account-creation_form p.checkbox label {
|
||||
float:none;
|
||||
width:auto;
|
||||
font-size:12px
|
||||
}
|
||||
#account-creation_form p.text input,
|
||||
#account-creation_form p.password input,
|
||||
#account-creation_form p.select input {
|
||||
padding:0 5px;
|
||||
height:22px;
|
||||
width:40%;/* 370 */
|
||||
border:1px solid #ccc;
|
||||
font-size: 12px;
|
||||
color:#666
|
||||
}
|
||||
#account-creation_form p.checkbox input {
|
||||
margin-left:140px;
|
||||
}
|
||||
#account-creation_form p.select select {
|
||||
margin-right:10px;
|
||||
border:1px solid #ccc;
|
||||
font-size: 12px;
|
||||
color:#666
|
||||
}
|
||||
#account-creation_form p.textarea textarea {
|
||||
height:80px;
|
||||
width:41%;
|
||||
border:1px solid #ccc;
|
||||
font-size: 12px;
|
||||
color:#666
|
||||
}
|
||||
|
||||
#account-creation_form span.form_info {
|
||||
display:block;
|
||||
margin:5px 0 0 265px;
|
||||
color:#666
|
||||
}
|
||||
#account-creation_form p.inline-infos {
|
||||
margin:0 0 0 45% !important;
|
||||
font-size:12px;
|
||||
color:#666;
|
||||
}
|
||||
|
||||
#center_column #account-creation_form p.cart_navigation {margin:20px 0}
|
||||
52
modules/privateshoplite/views/css/authentication16.css
Normal file
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license Copyrights FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
#account-creation_form .id_state,
|
||||
#account-creation_form .dni,
|
||||
#account-creation_form .postcode {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#create-account_form {
|
||||
min-height: 297px;
|
||||
}
|
||||
#create-account_form p {
|
||||
margin-bottom: 8px;
|
||||
}
|
||||
#create-account_form .form-group {
|
||||
margin: 0 0 20px 0;
|
||||
}
|
||||
|
||||
#login_form {
|
||||
min-height: 297px;
|
||||
}
|
||||
#login_form .form-group {
|
||||
margin: 0 0 3px 0;
|
||||
}
|
||||
#login_form .form-group.lost_password {
|
||||
margin: 14px 0 15px 0;
|
||||
}
|
||||
#login_form .form-group.lost_password a {
|
||||
text-decoration: underline;
|
||||
}
|
||||
#login_form .form-group.lost_password a:hover {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
#login_form .form-control,
|
||||
#create-account_form .form-control {
|
||||
max-width: 271px;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=authentication.css.map */
|
||||
36
modules/privateshoplite/views/css/index.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2015 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2015 PrestaShop SA
|
||||
* @version Release: $Revision$
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
51
modules/privateshoplite/views/css/jquery.autocomplete.css
Normal file
@@ -0,0 +1,51 @@
|
||||
.ac_results {
|
||||
text-align: left;
|
||||
padding: 0px;
|
||||
border: 1px solid black;
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
z-index: 99999;
|
||||
}
|
||||
|
||||
.ac_results ul {
|
||||
width: 100%;
|
||||
list-style-position: outside;
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.ac_results li {
|
||||
margin: 0px;
|
||||
padding: 2px 5px;
|
||||
cursor: default;
|
||||
display: block;
|
||||
/*
|
||||
if width will be 100% horizontal scrollbar will apear
|
||||
when scroll mode will be used
|
||||
*/
|
||||
/*width: 100%;*/
|
||||
font: menu;
|
||||
font-size: 12px;
|
||||
/*
|
||||
it is very important, if line-height not setted or setted
|
||||
in relative units scroll will be broken in firefox
|
||||
*/
|
||||
line-height: 16px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/*
|
||||
.ac_loading {
|
||||
background: white url('indicator.gif') right center no-repeat;
|
||||
}
|
||||
*/
|
||||
|
||||
.ac_odd {
|
||||
background-color: #eee;
|
||||
}
|
||||
|
||||
.ac_over {
|
||||
background-color: #0A246A;
|
||||
color: white;
|
||||
}
|
||||
438
modules/privateshoplite/views/css/private.css
Normal file
@@ -0,0 +1,438 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license Copyrights FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
::-moz-selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: #b3d4fc;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
html {
|
||||
padding: 30px 10px;
|
||||
font-size: 16px;
|
||||
line-height: 1.4;
|
||||
color: #737373;
|
||||
background: #f0f0f0;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
background: transparent;
|
||||
height: auto;
|
||||
}
|
||||
|
||||
body,
|
||||
html {
|
||||
height: auto !important;
|
||||
}
|
||||
|
||||
html,
|
||||
input {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
|
||||
#privatebox {
|
||||
border: medium none;
|
||||
border-radius: 5px;
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
/*overflow: auto;*/
|
||||
padding: 10px;
|
||||
/*width: 45%;*/
|
||||
}
|
||||
#wrapper.private_wrapper {
|
||||
height: 65%;
|
||||
margin-left: 1%;
|
||||
overflow: auto;
|
||||
width: 44%;
|
||||
border-bottom: 1px solid #999;
|
||||
border-top: 1px solid #999;
|
||||
}
|
||||
#wrapper {
|
||||
width: 40%;
|
||||
margin-top: 15% !important;
|
||||
margin-bottom: 5% !important;
|
||||
background: #f1f1f1 none repeat scroll 0 0 !important;
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 0 10px;
|
||||
font-size: 40px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
h1 span {
|
||||
color: #bbb;
|
||||
}
|
||||
h2 {
|
||||
color: #d35780;
|
||||
margin: 0 10px;
|
||||
font-size: 40px;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
h2 span {
|
||||
color: #bbb;
|
||||
font-size: 60px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
margin: 1.5em 0 0.5em;
|
||||
}
|
||||
|
||||
p {
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
ul {
|
||||
padding: 0 0 0 40px;
|
||||
margin: 1em 0;
|
||||
}
|
||||
|
||||
.container {
|
||||
padding: 10px;
|
||||
_width: 380px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
input::-moz-focus-inner {
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
#privatebox .private_login {
|
||||
/*border-top: 1px solid #e1e1e1;*/
|
||||
padding: 10px;
|
||||
}
|
||||
.radio-inline,
|
||||
.checkbox {
|
||||
padding-left: 5% !important;
|
||||
}
|
||||
#privatebox .private-subheading {
|
||||
border-bottom: 1px solid #d6d4d4;
|
||||
color: #d35780;
|
||||
font-family: "Open Sans", sans-serif;
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
line-height: normal;
|
||||
margin-bottom: 12px;
|
||||
padding: 0 0 15px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/*~~~~~~~~~~ PS 1.7 Styles ~~~~~~~~~~*/
|
||||
#fmm_ps17 h1 {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#fmm_ps17 #ps17_errors {
|
||||
background: #f3515c;
|
||||
color: #fff;
|
||||
padding: 1%;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#fmm_ps17 #ps17_errors ol {
|
||||
list-style: none;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
margin: 0;
|
||||
}
|
||||
/*
|
||||
#fmm_ps17 label {color: #333; font-weight: bold; font-size: 12px}
|
||||
|
||||
#fmm_ps17 #login_form { background: #fbfbfb; border: 1px solid #d6d4d4; padding: 14px 18px 13px}
|
||||
|
||||
#fmm_ps17 .form-control {box-shadow: none; height: 27px; padding: 3px 5px;border: 1px solid #d6d4d4; border-radius: 0;
|
||||
color: #9c9b9b; font-size: 13px; vertical-align: middle}*/
|
||||
|
||||
/*--------- END PS 1.7 -----------*/
|
||||
|
||||
@media only screen and (max-width: 360px) {
|
||||
#privatebox .container {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
#privatebox .container p img {
|
||||
width: 80%;
|
||||
}
|
||||
#privatebox .container h1 {
|
||||
margin-bottom: -10px;
|
||||
margin-top: 0;
|
||||
font-size: 25px;
|
||||
}
|
||||
#privatebox #noSlide .page-heading {
|
||||
font-size: 15px;
|
||||
}
|
||||
#private-lost-password h1.page-subheading {
|
||||
font-size: 16px;
|
||||
}
|
||||
#privatebox .private-subheading {
|
||||
border-bottom: 1px solid #d6d4d4;
|
||||
color: #d35780;
|
||||
font-family: "Open Sans", sans-serif;
|
||||
font-size: 15px;
|
||||
font-weight: 600;
|
||||
line-height: normal;
|
||||
margin-bottom: 5px;
|
||||
padding: 0 0 10px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
#register span {
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
}
|
||||
#SubmitLogin span,
|
||||
#SubmitCreate span,
|
||||
#privatebox #noSlide #account-creation_form .page-subheading {
|
||||
font-size: 12px;
|
||||
}
|
||||
#SubmitLogin span i,
|
||||
#SubmitCreate span i,
|
||||
.exttra_row {
|
||||
display: none;
|
||||
}
|
||||
td span.label-default {
|
||||
background-color: #999999;
|
||||
margin-top: -15px;
|
||||
}
|
||||
.private_error_resp {
|
||||
margin-bottom: 5px !important;
|
||||
margin-top: -17px !important;
|
||||
}
|
||||
#login_form {
|
||||
min-height: 240px;
|
||||
}
|
||||
#create-account_form {
|
||||
min-height: 275px;
|
||||
}
|
||||
.private_signup_table {
|
||||
margin-top: -40px;
|
||||
}
|
||||
}
|
||||
#logo_basic {
|
||||
text-align: center;
|
||||
}
|
||||
ul#pshop_bottom_footer {
|
||||
margin: 0px;
|
||||
}
|
||||
ul#pshop_bottom_footer li,
|
||||
ul#pshop_bottom_footer li div {
|
||||
display: inline-block;
|
||||
}
|
||||
table.private_login_table {
|
||||
width: 100%;
|
||||
}
|
||||
/*------- New Modern Theme Styles --------*/
|
||||
body.private_modern_theme #wrapper {
|
||||
padding-top: 0px !important;
|
||||
border-radius: 2px;
|
||||
}
|
||||
body.private_modern_theme .container {
|
||||
padding: 15px !important;
|
||||
border-radius: 2px;
|
||||
}
|
||||
body.private_modern_theme #logo_basic {
|
||||
padding: 15px 0 !important;
|
||||
text-align: center;
|
||||
background: rgba(239, 239, 239, 0.4);
|
||||
margin: -15px -15px 0 !important;
|
||||
display: block;
|
||||
}
|
||||
body.private_modern_theme #logo_basic img {
|
||||
max-width: 100%;
|
||||
}
|
||||
body.private_modern_theme h2.private-subheading {
|
||||
margin-left: 0px !important;
|
||||
margin-right: 0px !important;
|
||||
padding-top: 5px !important;
|
||||
font-weight: bold !important;
|
||||
color: #414141 !important;
|
||||
font-size: 19px !important;
|
||||
}
|
||||
body.private_modern_theme .private_login_table {
|
||||
width: 100%;
|
||||
}
|
||||
body.private_modern_theme
|
||||
.private_login_table
|
||||
tr.pshop_fields_row
|
||||
td:first-child {
|
||||
display: none;
|
||||
}
|
||||
body.private_modern_theme input.form-control {
|
||||
width: 100% !important;
|
||||
max-width: 100% !important;
|
||||
padding: 3%;
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
margin: 3px 0 !important;
|
||||
border: 3px solid #efefef !important;
|
||||
}
|
||||
body.private_modern_theme .alert.alert-danger {
|
||||
background: rgba(243, 81, 92, 0.7) !important;
|
||||
border: 0px !important;
|
||||
border-radius: 4px;
|
||||
}
|
||||
body.private_modern_theme .alert.alert-danger ol {
|
||||
padding-left: 3px !important;
|
||||
}
|
||||
body.private_modern_theme .alert.alert-danger {
|
||||
background: rgba(243, 81, 92, 0.7) !important;
|
||||
border: 0px !important;
|
||||
border-radius: 4px;
|
||||
}
|
||||
body.private_modern_theme .pshop_title_shop {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
body.private_modern_theme ul#pshop_bottom_footer {
|
||||
padding: 5px 0 0;
|
||||
}
|
||||
body.private_modern_theme ul#pshop_bottom_footer li.submit {
|
||||
float: right;
|
||||
}
|
||||
body.private_modern_theme ul#pshop_bottom_footer .lost_password {
|
||||
font-size: 13px !important;
|
||||
font-style: italic;
|
||||
margin: 8px 0 !important;
|
||||
}
|
||||
body.private_modern_theme ul#pshop_bottom_footer .lost_password a {
|
||||
text-decoration: none;
|
||||
background: rgba(239, 239, 239, 0.4);
|
||||
padding: 1px 4px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
body.private_modern_theme ul#pshop_bottom_footer .lost_password a:hover {
|
||||
color: #d35780;
|
||||
background: rgba(239, 239, 239, 0.8);
|
||||
}
|
||||
body.private_modern_theme .btn {
|
||||
border-radius: 3px;
|
||||
background: #00aff0 !important;
|
||||
text-transform: uppercase;
|
||||
border: 0px !important;
|
||||
color: #fff !important;
|
||||
box-shadow: 0 1px #009bd3 inset, 1px 0 #009bd3 inset, -1px 0 #009bd3 inset,
|
||||
0 -1px #009bd3 inset, 0 2px #009bd3, 0 3px #009bd3,
|
||||
0 4px 2px rgba(0, 0, 0, 0);
|
||||
font-weight: 700;
|
||||
}
|
||||
body.private_modern_theme .btn:hover {
|
||||
background: #009bd3 !important;
|
||||
}
|
||||
body.private_modern_theme form#form_forgotpassword label {
|
||||
display: none;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .form-control-label,
|
||||
body.private_modern_theme form#customer-form .form-control-comment {
|
||||
display: none;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .social_title label {
|
||||
display: inline !important;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .row {
|
||||
margin-left: 0px !important;
|
||||
margin-right: 0px !important;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .col-md-6 {
|
||||
width: 100% !important;
|
||||
padding: 0px !important;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .pshop_show_hide button {
|
||||
padding: 1.1rem 1rem !important;
|
||||
}
|
||||
body.private_modern_theme form#customer-form .social_title .col-md-6 {
|
||||
width: 75% !important;
|
||||
padding-top: 0.625rem !important;
|
||||
}
|
||||
/*---------------------------------------*/
|
||||
/*---------PS-1.6 and below Fixes----------*/
|
||||
.privateshop_ps_lower .box {
|
||||
background: transparent !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .box {
|
||||
padding: 0px !important;
|
||||
border: 0px !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .pshop_fields_row_hide {
|
||||
display: none;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower input.form-control {
|
||||
height: auto !important;
|
||||
color: #7a7a7a !important;
|
||||
border-radius: 2px !important;
|
||||
font-size: 14px !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower input.form-control:focus {
|
||||
outline: 4px solid #2fb5d2;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .btn span {
|
||||
border: 0px !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .alert.alert-danger ol {
|
||||
margin-bottom: 0px !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .alert.alert-danger ol li {
|
||||
list-style: none !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .form-error input.form-control,
|
||||
body.private_modern_theme .privateshop_ps_lower .form-ok input.form-control {
|
||||
background-position: right center !important;
|
||||
}
|
||||
/*body.private_modern_theme .privateshop_ps_lower .account_creation .form-group label { display: none}*/
|
||||
/*------------------------*/
|
||||
@media (min-width: 500px) and (max-width: 768px) {
|
||||
#wrapper {
|
||||
width: 75% !important;
|
||||
}
|
||||
}
|
||||
@media (min-width: 200px) and (max-width: 499px) {
|
||||
#wrapper {
|
||||
width: 90% !important;
|
||||
}
|
||||
body.private_modern_theme
|
||||
form#customer-form
|
||||
.social_title
|
||||
label.form-control-label {
|
||||
display: none !important;
|
||||
}
|
||||
body.private_modern_theme .privateshop_ps_lower .btn,
|
||||
body.private_modern_theme .privateshop_ps_lower .btn span {
|
||||
font-size: 13px !important;
|
||||
}
|
||||
body.private_modern_theme
|
||||
.privateshop_ps_lower
|
||||
#new-private-account
|
||||
.pull-right {
|
||||
clear: both;
|
||||
float: left !important;
|
||||
margin-top: 5%;
|
||||
}
|
||||
}
|
||||
@media (min-width: 200px) and (max-width: 400px) {
|
||||
body.private_modern_theme form#customer-form .pshop_show_hide button {
|
||||
padding-top: 0.7rem !important;
|
||||
padding-bottom: 0.7rem !important;
|
||||
}
|
||||
body.private_modern_theme
|
||||
form#customer-form
|
||||
.social_title
|
||||
.form-control-valign {
|
||||
width: 100% !important;
|
||||
}
|
||||
#private-lost-password h1 {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
}
|
||||
373
modules/privateshoplite/views/css/private_block.css
Normal file
@@ -0,0 +1,373 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license Copyrights FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
#privatebox {
|
||||
border: medium none;
|
||||
border-radius: 5px;
|
||||
display: block;
|
||||
margin: 0 auto;
|
||||
/*overflow: auto;*/
|
||||
padding: 10px;
|
||||
/*width: 45%;*/
|
||||
}
|
||||
#private-wrapper.private_wrapper {
|
||||
height: 65%;
|
||||
margin-left: 1%;
|
||||
overflow: auto;
|
||||
width: 44%;
|
||||
border-bottom: 1px solid #999;
|
||||
border-top: 1px solid #999;
|
||||
}
|
||||
#private-wrapper {
|
||||
width: 40%;
|
||||
margin-top: 15% !important;
|
||||
margin-bottom: 5% !important;
|
||||
background: #f1f1f1 none repeat scroll 0 0;
|
||||
}
|
||||
|
||||
#privatebox .private_login {
|
||||
/*border-top: 1px solid #e1e1e1;*/
|
||||
padding: 10px;
|
||||
}
|
||||
.radio-inline,
|
||||
.checkbox {
|
||||
padding-left: 5% !important;
|
||||
}
|
||||
#privatebox .private-subheading {
|
||||
border-bottom: 1px solid #d6d4d4;
|
||||
color: #d35780;
|
||||
font-family: "Open Sans", sans-serif;
|
||||
font-size: 18px;
|
||||
font-weight: 600;
|
||||
line-height: normal;
|
||||
margin-bottom: 12px;
|
||||
padding: 0 0 15px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
/*~~~~~~~~~~ PS 1.7 Styles ~~~~~~~~~~*/
|
||||
#fmm_ps17 h1 {
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#fmm_ps17 #ps17_errors {
|
||||
background: #f3515c;
|
||||
color: #fff;
|
||||
padding: 1%;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#fmm_ps17 #ps17_errors ol {
|
||||
list-style: none;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
margin: 0;
|
||||
}
|
||||
/*
|
||||
#fmm_ps17 label {color: #333; font-weight: bold; font-size: 12px}
|
||||
|
||||
#fmm_ps17 #login_form { background: #fbfbfb; border: 1px solid #d6d4d4; padding: 14px 18px 13px}
|
||||
|
||||
#fmm_ps17 .form-control {box-shadow: none; height: 27px; padding: 3px 5px;border: 1px solid #d6d4d4; border-radius: 0;
|
||||
color: #9c9b9b; font-size: 13px; vertical-align: middle}*/
|
||||
|
||||
/*--------- END PS 1.7 -----------*/
|
||||
|
||||
@media only screen and (max-width: 360px) {
|
||||
#privatebox .container {
|
||||
padding-left: 0;
|
||||
padding-right: 0;
|
||||
}
|
||||
#privatebox .container p img {
|
||||
width: 80%;
|
||||
}
|
||||
#privatebox .container h1 {
|
||||
margin-bottom: -10px;
|
||||
margin-top: 0;
|
||||
font-size: 25px;
|
||||
}
|
||||
#privatebox #noSlide .page-heading {
|
||||
font-size: 15px;
|
||||
}
|
||||
#private-lost-password h1.page-subheading {
|
||||
font-size: 16px;
|
||||
}
|
||||
#privatebox .private-subheading {
|
||||
border-bottom: 1px solid #d6d4d4;
|
||||
color: #d35780;
|
||||
font-family: "Open Sans", sans-serif;
|
||||
font-size: 15px;
|
||||
font-weight: 600;
|
||||
line-height: normal;
|
||||
margin-bottom: 5px;
|
||||
padding: 0 0 10px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
#register span {
|
||||
font-size: 12px;
|
||||
text-align: center;
|
||||
}
|
||||
#SubmitLogin span,
|
||||
#SubmitCreate span,
|
||||
#privatebox #noSlide #account-creation_form .page-subheading {
|
||||
font-size: 12px;
|
||||
}
|
||||
#SubmitLogin span i,
|
||||
#SubmitCreate span i,
|
||||
.exttra_row {
|
||||
display: none;
|
||||
}
|
||||
td span.label-default {
|
||||
background-color: #999999;
|
||||
margin-top: -15px;
|
||||
}
|
||||
.private_error_resp {
|
||||
margin-bottom: 5px !important;
|
||||
margin-top: -17px !important;
|
||||
}
|
||||
#login_form {
|
||||
min-height: 240px;
|
||||
}
|
||||
#create-account_form {
|
||||
min-height: 275px;
|
||||
}
|
||||
.private_signup_table {
|
||||
margin-top: -40px;
|
||||
}
|
||||
}
|
||||
#module-privateshoplite-private .breadcrumb {
|
||||
display: none !important;
|
||||
}
|
||||
#fmm_ps16 table.private_login_table td,
|
||||
#fmm_ps16 table.private_login_table th {
|
||||
padding: 0px !important;
|
||||
}
|
||||
#fmm_ps16 #new-private-account .form-control,
|
||||
#fmm_ps16 #private-login .form-control {
|
||||
height: 40px !important;
|
||||
}
|
||||
#logo_basic {
|
||||
text-align: center;
|
||||
}
|
||||
ul#pshop_bottom_footer {
|
||||
margin: 0px;
|
||||
}
|
||||
ul#pshop_bottom_footer li,
|
||||
ul#pshop_bottom_footer li div {
|
||||
display: inline-block;
|
||||
}
|
||||
table.private_login_table {
|
||||
width: 100%;
|
||||
}
|
||||
/*------- New Modern Theme Styles --------*/
|
||||
div.private_modern_theme #private-wrapper {
|
||||
padding-top: 0px !important;
|
||||
border-radius: 2px;
|
||||
}
|
||||
div.private_modern_theme .container {
|
||||
padding: 15px !important;
|
||||
border-radius: 2px;
|
||||
}
|
||||
div.private_modern_theme #logo_basic {
|
||||
padding: 15px 0 !important;
|
||||
text-align: center;
|
||||
background: rgba(239, 239, 239, 0.4);
|
||||
margin: -15px -15px 0 !important;
|
||||
display: block;
|
||||
}
|
||||
div.private_modern_theme #logo_basic img {
|
||||
max-width: 100%;
|
||||
}
|
||||
div.private_modern_theme h2.private-subheading {
|
||||
margin-left: 0px !important;
|
||||
margin-right: 0px !important;
|
||||
padding-top: 5px !important;
|
||||
font-weight: bold !important;
|
||||
color: #414141 !important;
|
||||
font-size: 19px !important;
|
||||
}
|
||||
div.private_modern_theme .private_login_table {
|
||||
width: 100%;
|
||||
}
|
||||
div.private_modern_theme
|
||||
.private_login_table
|
||||
tr.pshop_fields_row
|
||||
td:first-child {
|
||||
display: none;
|
||||
}
|
||||
#fmm_ps17 div.private_modern_theme input.form-control {
|
||||
width: 100% !important;
|
||||
max-width: 100% !important;
|
||||
padding: 3%;
|
||||
font-style: italic;
|
||||
font-weight: normal;
|
||||
margin: 3px 0 !important;
|
||||
border: 3px solid #efefef !important;
|
||||
}
|
||||
div.private_modern_theme .alert.alert-danger {
|
||||
background: rgba(243, 81, 92, 0.7) !important;
|
||||
border: 0px !important;
|
||||
border-radius: 4px;
|
||||
}
|
||||
div.private_modern_theme .alert.alert-danger ol {
|
||||
padding-left: 3px !important;
|
||||
}
|
||||
div.private_modern_theme .alert.alert-danger {
|
||||
background: rgba(243, 81, 92, 0.7) !important;
|
||||
border: 0px !important;
|
||||
border-radius: 4px;
|
||||
}
|
||||
div.private_modern_theme .pshop_title_shop {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
div.private_modern_theme ul#pshop_bottom_footer {
|
||||
padding: 5px 0 0;
|
||||
}
|
||||
div.private_modern_theme ul#pshop_bottom_footer li.submit {
|
||||
float: right;
|
||||
}
|
||||
div.private_modern_theme ul#pshop_bottom_footer .lost_password {
|
||||
font-size: 13px !important;
|
||||
font-style: italic;
|
||||
margin: 8px 0 !important;
|
||||
}
|
||||
div.private_modern_theme ul#pshop_bottom_footer .lost_password a {
|
||||
text-decoration: none;
|
||||
background: rgba(239, 239, 239, 0.4);
|
||||
padding: 1px 4px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
div.private_modern_theme ul#pshop_bottom_footer .lost_password a:hover {
|
||||
color: #d35780;
|
||||
background: rgba(239, 239, 239, 0.8);
|
||||
}
|
||||
div.private_modern_theme .btn {
|
||||
border-radius: 3px;
|
||||
background: #00aff0 !important;
|
||||
text-transform: uppercase;
|
||||
border: 0px !important;
|
||||
color: #fff !important;
|
||||
box-shadow: 0 1px #009bd3 inset, 1px 0 #009bd3 inset, -1px 0 #009bd3 inset,
|
||||
0 -1px #009bd3 inset, 0 2px #009bd3, 0 3px #009bd3,
|
||||
0 4px 2px rgba(0, 0, 0, 0);
|
||||
font-weight: 700;
|
||||
}
|
||||
div.private_modern_theme .btn:hover {
|
||||
background: #009bd3 !important;
|
||||
}
|
||||
div.private_modern_theme form#form_forgotpassword label {
|
||||
display: none;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .form-control-label,
|
||||
div.private_modern_theme form#customer-form .form-control-comment {
|
||||
display: none;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .social_title label {
|
||||
display: inline !important;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .row {
|
||||
margin-left: 0px !important;
|
||||
margin-right: 0px !important;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .col-md-6 {
|
||||
width: 100% !important;
|
||||
padding: 0px !important;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .pshop_show_hide button {
|
||||
padding: 1.1rem 1rem !important;
|
||||
}
|
||||
div.private_modern_theme form#customer-form .social_title .col-md-6 {
|
||||
width: 75% !important;
|
||||
padding-top: 0.625rem !important;
|
||||
}
|
||||
/*---------------------------------------*/
|
||||
/*---------PS-1.6 and below Fixes----------*/
|
||||
.privateshop_ps_lower .box {
|
||||
background: transparent !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .box {
|
||||
padding: 0px !important;
|
||||
border: 0px !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .pshop_fields_row_hide {
|
||||
display: none;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower input.form-control {
|
||||
height: auto !important;
|
||||
color: #7a7a7a !important;
|
||||
border-radius: 2px !important;
|
||||
font-size: 14px !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower input.form-control:focus {
|
||||
outline: 4px solid #2fb5d2;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .btn span {
|
||||
border: 0px !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .alert.alert-danger ol {
|
||||
margin-bottom: 0px !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .alert.alert-danger ol li {
|
||||
list-style: none !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .form-error input.form-control,
|
||||
div.private_modern_theme .privateshop_ps_lower .form-ok input.form-control {
|
||||
background-position: right center !important;
|
||||
}
|
||||
/*div.private_modern_theme .privateshop_ps_lower .account_creation .form-group label { display: none}*/
|
||||
/*------------------------*/
|
||||
@media (min-width: 500px) and (max-width: 768px) {
|
||||
#private-wrapper {
|
||||
width: 75% !important;
|
||||
}
|
||||
}
|
||||
@media (min-width: 200px) and (max-width: 499px) {
|
||||
#private-wrapper {
|
||||
width: 90% !important;
|
||||
}
|
||||
div.private_modern_theme
|
||||
form#customer-form
|
||||
.social_title
|
||||
label.form-control-label {
|
||||
display: none !important;
|
||||
}
|
||||
div.private_modern_theme .privateshop_ps_lower .btn,
|
||||
div.private_modern_theme .privateshop_ps_lower .btn span {
|
||||
font-size: 13px !important;
|
||||
}
|
||||
div.private_modern_theme
|
||||
.privateshop_ps_lower
|
||||
#new-private-account
|
||||
.pull-right {
|
||||
clear: both;
|
||||
float: left !important;
|
||||
margin-top: 5%;
|
||||
}
|
||||
}
|
||||
@media (min-width: 200px) and (max-width: 400px) {
|
||||
div.private_modern_theme form#customer-form .pshop_show_hide button {
|
||||
padding-top: 0.7rem !important;
|
||||
padding-bottom: 0.7rem !important;
|
||||
}
|
||||
div.private_modern_theme
|
||||
form#customer-form
|
||||
.social_title
|
||||
.form-control-valign {
|
||||
width: 100% !important;
|
||||
}
|
||||
#private-lost-password h1 {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
}
|
||||
136
modules/privateshoplite/views/css/privateshopfields.css
Normal file
@@ -0,0 +1,136 @@
|
||||
/*
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FMM Modules.
|
||||
*
|
||||
* @author FMM Modules
|
||||
* @copyright 2021 FMM Module All right reserved
|
||||
* @license FMM Modules
|
||||
*/
|
||||
|
||||
.image_container {
|
||||
border: 1px solid #d4d4d4;
|
||||
cursor: pointer;
|
||||
max-width: 100%;
|
||||
}
|
||||
.image_input, .extension_error, .image_container + .uploader {
|
||||
display: none;
|
||||
}
|
||||
.extension_error {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.type_multiboxes {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
/* radio and checkboxes */
|
||||
|
||||
#registration_fields input[type="checkbox"]:not(old),
|
||||
#registration_fields input[type="radio"]:not(old) {
|
||||
width: 2em;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 1em;
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
#registration_fields input[type="checkbox"]:not(old) + label,
|
||||
#registration_fields input[type="radio"]:not(old) + label {
|
||||
display: inline-block;
|
||||
margin-left: 0em;
|
||||
line-height: 1.5em;
|
||||
}
|
||||
|
||||
#registration_fields input[type="checkbox"]:not(old) + label > span {
|
||||
border-radius: 0.25em;
|
||||
}
|
||||
#registration_fields input[type="radio"]:not(old) + label > span {
|
||||
border-radius: 1.25em;
|
||||
}
|
||||
#registration_fields input[type="checkbox"]:not(old) + label > span,
|
||||
#registration_fields input[type="radio"]:not(old) + label > span {
|
||||
display: inline-block;
|
||||
width: 1em;
|
||||
height: 1em;
|
||||
margin: 0.25em 0.5em 0.25em 0.25em;
|
||||
border: 0.0625em solid rgb(192, 192, 192);
|
||||
/* border-radius: 0.25em; */
|
||||
background: rgb(224, 224, 224);
|
||||
background-image: -moz-linear-gradient(
|
||||
rgb(240, 240, 240),
|
||||
rgb(224, 224, 224)
|
||||
);
|
||||
background-image: -ms-linear-gradient(rgb(240, 240, 240), rgb(224, 224, 224));
|
||||
background-image: -o-linear-gradient(rgb(240, 240, 240), rgb(224, 224, 224));
|
||||
background-image: -webkit-linear-gradient(
|
||||
rgb(240, 240, 240),
|
||||
rgb(224, 224, 224)
|
||||
);
|
||||
background-image: linear-gradient(rgb(240, 240, 240), rgb(224, 224, 224));
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
#registration_fields
|
||||
input[type="checkbox"]:not(old):checked
|
||||
+ label
|
||||
> span,
|
||||
#registration_fields input[type="radio"]:not(old):checked + label > span {
|
||||
background-image: -moz-linear-gradient(
|
||||
rgb(224, 224, 224),
|
||||
rgb(240, 240, 240)
|
||||
);
|
||||
background-image: -ms-linear-gradient(rgb(224, 224, 224), rgb(240, 240, 240));
|
||||
background-image: -o-linear-gradient(rgb(224, 224, 224), rgb(240, 240, 240));
|
||||
background-image: -webkit-linear-gradient(
|
||||
rgb(224, 224, 224),
|
||||
rgb(240, 240, 240)
|
||||
);
|
||||
background-image: linear-gradient(rgb(224, 224, 224), rgb(240, 240, 240));
|
||||
}
|
||||
|
||||
#registration_fields
|
||||
input[type="checkbox"]:checked:not(old)
|
||||
+ label
|
||||
> span::before {
|
||||
content: "✔";
|
||||
display: block;
|
||||
width: 1em;
|
||||
color: rgb(115, 153, 77);
|
||||
font-size: 15px;
|
||||
line-height: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#registration_fields
|
||||
input[type="radio"]:checked:not(old)
|
||||
+ label
|
||||
> span
|
||||
> span {
|
||||
display: block;
|
||||
width: 0.9em;
|
||||
height: 0.9em;
|
||||
border: 0.0625em solid rgb(115, 153, 77);
|
||||
border-radius: 1.125em;
|
||||
background: rgb(153, 204, 102);
|
||||
background-image: -moz-linear-gradient(
|
||||
rgb(179, 217, 140),
|
||||
rgb(153, 204, 102)
|
||||
);
|
||||
background-image: -ms-linear-gradient(rgb(179, 217, 140), rgb(153, 204, 102));
|
||||
background-image: -o-linear-gradient(rgb(179, 217, 140), rgb(153, 204, 102));
|
||||
background-image: -webkit-linear-gradient(
|
||||
rgb(179, 217, 140),
|
||||
rgb(153, 204, 102)
|
||||
);
|
||||
background-image: linear-gradient(rgb(179, 217, 140), rgb(153, 204, 102));
|
||||
}
|
||||
#registration_fields .rf_no_display {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.cf_disabled_btn {
|
||||
opacity: .65;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
BIN
modules/privateshoplite/views/img/__logo.png
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
modules/privateshoplite/views/img/access.png
Normal file
|
After Width: | Height: | Size: 940 B |
BIN
modules/privateshoplite/views/img/bg_table_th.png
Normal file
|
After Width: | Height: | Size: 274 B |
BIN
modules/privateshoplite/views/img/c.png
Normal file
|
After Width: | Height: | Size: 5.7 KiB |
BIN
modules/privateshoplite/views/img/color.png
Normal file
|
After Width: | Height: | Size: 833 B |
BIN
modules/privateshoplite/views/img/colorpicker.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
modules/privateshoplite/views/img/config.png
Normal file
|
After Width: | Height: | Size: 863 B |
BIN
modules/privateshoplite/views/img/download.png
Normal file
|
After Width: | Height: | Size: 475 B |
BIN
modules/privateshoplite/views/img/empty.png
Normal file
|
After Width: | Height: | Size: 4.5 KiB |
BIN
modules/privateshoplite/views/img/graybar.jpg
Normal file
|
After Width: | Height: | Size: 361 B |
BIN
modules/privateshoplite/views/img/grid.gif
Normal file
|
After Width: | Height: | Size: 84 B |
BIN
modules/privateshoplite/views/img/group.png
Normal file
|
After Width: | Height: | Size: 424 B |
32
modules/privateshoplite/views/img/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
BIN
modules/privateshoplite/views/img/info.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
modules/privateshoplite/views/img/l.png
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
modules/privateshoplite/views/img/load.gif
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
modules/privateshoplite/views/img/logo.gif
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
modules/privateshoplite/views/img/minus_2.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
modules/privateshoplite/views/img/modules/customfields.png
Normal file
|
After Width: | Height: | Size: 34 KiB |
32
modules/privateshoplite/views/img/modules/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
BIN
modules/privateshoplite/views/img/modules/prettyurl.png
Normal file
|
After Width: | Height: | Size: 103 KiB |
BIN
modules/privateshoplite/views/img/modules/registrationfields.png
Normal file
|
After Width: | Height: | Size: 72 KiB |
BIN
modules/privateshoplite/views/img/plus.png
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
modules/privateshoplite/views/img/private/010.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
modules/privateshoplite/views/img/private/Tło.jpg
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
modules/privateshoplite/views/img/private/baner_croptop_pl.jpg
Normal file
|
After Width: | Height: | Size: 110 KiB |
|
After Width: | Height: | Size: 101 KiB |
BIN
modules/privateshoplite/views/img/private/field_6(2).jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
32
modules/privateshoplite/views/img/private/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
BIN
modules/privateshoplite/views/img/private/redline_rl_logo.png
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
BIN
modules/privateshoplite/views/img/private/tmp/field_6(2).jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
32
modules/privateshoplite/views/img/private/tmp/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
BIN
modules/privateshoplite/views/img/r.png
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
modules/privateshoplite/views/img/shop.png
Normal file
|
After Width: | Height: | Size: 902 B |
BIN
modules/privateshoplite/views/img/usr.png
Normal file
|
After Width: | Height: | Size: 547 B |
32
modules/privateshoplite/views/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
135
modules/privateshoplite/views/js/authentication15.js
Normal file
@@ -0,0 +1,135 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
$(document).ready(function(){
|
||||
$('#create-account_form').submit(function(){
|
||||
submitFunction();
|
||||
return false;
|
||||
});
|
||||
$('#SubmitCreate').click(function(){
|
||||
submitFunction();
|
||||
});
|
||||
});
|
||||
function submitFunction()
|
||||
{
|
||||
$('#create_account_error').html('').hide();
|
||||
//send the ajax request to the server
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: baseUri,
|
||||
async: true,
|
||||
cache: false,
|
||||
dataType : "json",
|
||||
data: {
|
||||
controller: 'authentication',
|
||||
SubmitCreate: 1,
|
||||
ajax: true,
|
||||
email_create: $('#email_create').val(),
|
||||
token: token
|
||||
},
|
||||
success: function(jsonData)
|
||||
{
|
||||
if (jsonData.hasError)
|
||||
{
|
||||
var errors = '';
|
||||
for(error in jsonData.errors)
|
||||
//IE6 bug fix
|
||||
if(error != 'indexOf')
|
||||
errors += '<li>'+jsonData.errors[error]+'</li>';
|
||||
$('#create_account_error').html('<ol>'+errors+'</ol>').show();
|
||||
}
|
||||
else
|
||||
{
|
||||
$('#wrapper').addClass('private_wrapper');
|
||||
$('#wrapper').removeClass('center_align');
|
||||
// adding a div to display a transition
|
||||
$('#center_column').html('<div id="noSlide">'+$('#center_column').html()+'</div>');
|
||||
$('#noSlide').fadeOut('slow', function(){
|
||||
$('#noSlide').html(jsonData.page);
|
||||
// update the state (when this file is called from AJAX you still need to update the state)
|
||||
bindStateInputAndUpdate();
|
||||
});
|
||||
$('#noSlide').fadeIn('slow');
|
||||
document.location = '#account-creation';
|
||||
}
|
||||
},
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown)
|
||||
{
|
||||
alert("TECHNICAL ERROR: unable to load form.\n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus);
|
||||
}
|
||||
});
|
||||
}
|
||||
function bindStateInputAndUpdate()
|
||||
{
|
||||
$('select#id_country').change(function(){
|
||||
updateState();
|
||||
updateNeedIDNumber();
|
||||
updateZipCode();
|
||||
});
|
||||
|
||||
if ($('select#id_country_invoice').length != 0)
|
||||
{
|
||||
$('select#id_country_invoice').change(function(){
|
||||
updateState('invoice');
|
||||
updateNeedIDNumber('invoice');
|
||||
updateZipCode();
|
||||
});
|
||||
if ($('select#id_country_invoice:visible').length != 0)
|
||||
{
|
||||
updateState('invoice');
|
||||
updateNeedIDNumber('invoice');
|
||||
updateZipCode('invoice');
|
||||
}
|
||||
}
|
||||
|
||||
updateState();
|
||||
updateNeedIDNumber();
|
||||
updateZipCode();
|
||||
}
|
||||
|
||||
function updateState(suffix)
|
||||
{
|
||||
$('select#id_state'+(suffix !== undefined ? '_'+suffix : '')+' option:not(:first-child)').remove();
|
||||
var states = countries[$('select#id_country'+(suffix !== undefined ? '_'+suffix : '')).val()];
|
||||
if(typeof(states) != 'undefined')
|
||||
{
|
||||
$(states).each(function (key, item){
|
||||
$('select#id_state'+(suffix !== undefined ? '_'+suffix : '')).append('<option value="'+item.id+'"'+ (idSelectedCountry == item.id ? ' selected="selected"' : '') + '>'+item.name+'</option>');
|
||||
});
|
||||
|
||||
$('p.id_state'+(suffix !== undefined ? '_'+suffix : '')+':hidden').slideDown('slow');
|
||||
}
|
||||
else
|
||||
$('p.id_state'+(suffix !== undefined ? '_'+suffix : '')).hide();
|
||||
|
||||
}
|
||||
|
||||
function updateNeedIDNumber(suffix)
|
||||
{
|
||||
var idCountry = parseInt($('select#id_country'+(suffix !== undefined ? '_'+suffix : '')).val());
|
||||
|
||||
if ($.inArray(idCountry, countriesNeedIDNumber) >= 0)
|
||||
$('.dni'+(suffix !== undefined ? '_'+suffix : '')).slideDown('slow');
|
||||
else
|
||||
$('.dni'+(suffix !== undefined ? '_'+suffix : '')).slideUp('fast');
|
||||
}
|
||||
|
||||
function updateZipCode(suffix)
|
||||
{
|
||||
var idCountry = parseInt($('select#id_country'+(suffix !== undefined ? '_'+suffix : '')).val());
|
||||
|
||||
if (countriesNeedZipCode[idCountry] != 0)
|
||||
$('.postcode'+(suffix !== undefined ? '_'+suffix : '')).slideDown('slow');
|
||||
else
|
||||
$('.postcode'+(suffix !== undefined ? '_'+suffix : '')).slideUp('fast');
|
||||
}
|
||||
91
modules/privateshoplite/views/js/authentication16.js
Normal file
@@ -0,0 +1,91 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
$(document).ready(function(){
|
||||
$(document).on('submit', '#create-account_form', function(e){
|
||||
e.preventDefault();
|
||||
submitFunction();
|
||||
});
|
||||
$('.is_customer_param').hide();
|
||||
});
|
||||
|
||||
function submitFunction()
|
||||
{
|
||||
$('#create_account_error').html('').hide();
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: baseUri + '?rand=' + new Date().getTime(),
|
||||
async: true,
|
||||
cache: false,
|
||||
dataType : "json",
|
||||
headers: { "cache-control": "no-cache" },
|
||||
data:
|
||||
{
|
||||
controller: 'authentication',
|
||||
SubmitCreate: 1,
|
||||
ajax: true,
|
||||
email_create: $('#email_create').val(),
|
||||
back: $('input[name=back]').val(),
|
||||
token: token
|
||||
},
|
||||
success: function(jsonData)
|
||||
{
|
||||
if (jsonData.hasError)
|
||||
{
|
||||
var errors = '';
|
||||
for(error in jsonData.errors)
|
||||
//IE6 bug fix
|
||||
if(error != 'indexOf')
|
||||
errors += '<li>' + jsonData.errors[error] + '</li>';
|
||||
$('#create_account_error').html('<ol>' + errors + '</ol>').show();
|
||||
}
|
||||
else
|
||||
{
|
||||
// adding a div to display a transition
|
||||
$('#wrapper').addClass('private_wrapper');
|
||||
$('#center_column').html('<div id="noSlide">' + $('#center_column').html() + '</div>');
|
||||
$('#noSlide').fadeOut('slow', function()
|
||||
{
|
||||
$('#noSlide').html(jsonData.page);
|
||||
$(this).fadeIn('slow', function()
|
||||
{
|
||||
if (typeof bindUniform !=='undefined')
|
||||
bindUniform();
|
||||
if (typeof bindStateInputAndUpdate !=='undefined')
|
||||
bindStateInputAndUpdate();
|
||||
document.location = '#account-creation';
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown)
|
||||
{
|
||||
error = "TECHNICAL ERROR: unable to load form.\n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus;
|
||||
if (!!$.prototype.fancybox)
|
||||
{
|
||||
$.fancybox.open([
|
||||
{
|
||||
type: 'inline',
|
||||
autoScale: true,
|
||||
minHeight: 30,
|
||||
content: "<p class='fancybox-error'>" + error + '</p>'
|
||||
}],
|
||||
{
|
||||
padding: 0
|
||||
});
|
||||
}
|
||||
else
|
||||
alert(error);
|
||||
}
|
||||
});
|
||||
}
|
||||
127
modules/privateshoplite/views/js/back.js
Normal file
@@ -0,0 +1,127 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
$(document).ready(function() {
|
||||
toggleCategoryField('CATEGORY_SELECTION_ENABLED_DISABLED', 'categories_selection');
|
||||
|
||||
toggleCategoryField('PRODUCT_SELECTION_ENABLED_DISABLED', 'product_selection');
|
||||
toggleCategoryField('SUPPLIER_SELECTION_ENABLED_DISABLED', 'supplier_selection');
|
||||
toggleCategoryField('MANUFACTURER_SELECTION_ENABLED_DISABLED', 'manufacturer_selection');
|
||||
toggleCategoryField('CMS_SELECTION_ENABLED_DISABLED', 'cms_selection');
|
||||
togglemodule('PRIVATE_ENABLED_DISABLED', 'general_selected_part');
|
||||
|
||||
$('input[name="CATEGORY_SELECTION_ENABLED_DISABLED"]').change(function() {
|
||||
toggleCategoryField('CATEGORY_SELECTION_ENABLED_DISABLED', 'categories_selection');
|
||||
});
|
||||
|
||||
$('input[name="PRIVATE_ENABLED_DISABLED"]').change(function() {
|
||||
togglemodule('PRIVATE_ENABLED_DISABLED', 'general_selected_part');
|
||||
});
|
||||
|
||||
$('input[name="PRODUCT_SELECTION_ENABLED_DISABLED"]').change(function() {
|
||||
toggleCategoryField('PRODUCT_SELECTION_ENABLED_DISABLED', 'product_selection');
|
||||
});
|
||||
|
||||
$('input[name="SUPPLIER_SELECTION_ENABLED_DISABLED"]').change(function() {
|
||||
toggleCategoryField('SUPPLIER_SELECTION_ENABLED_DISABLED', 'supplier_selection');
|
||||
});
|
||||
|
||||
$('input[name="MANUFACTURER_SELECTION_ENABLED_DISABLED"]').change(function() {
|
||||
toggleCategoryField('MANUFACTURER_SELECTION_ENABLED_DISABLED', 'manufacturer_selection');
|
||||
});
|
||||
|
||||
$('input[name="CMS_SELECTION_ENABLED_DISABLED"]').change(function() {
|
||||
toggleCategoryField('CMS_SELECTION_ENABLED_DISABLED', 'cms_selection');
|
||||
});
|
||||
|
||||
$('#privateshop-settings-delete-logo').on('click', function() {
|
||||
var filename = $('#privateshop-settings-delete-logo').data('filename');
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: delete_url,
|
||||
dataType : 'json',
|
||||
data: {
|
||||
key: 'PRIVATE_CUSTOM_LOGO_IMG'
|
||||
},
|
||||
success: function(jsonData) {
|
||||
var messageDiv = $('#logo-message');
|
||||
messageDiv.hide();
|
||||
if (jsonData['success']) {
|
||||
location.reload();
|
||||
} else {
|
||||
messageDiv
|
||||
.removeClass('alert-success')
|
||||
.addClass('alert alert-danger')
|
||||
.text('An error occurred: ' + [jsonData['message']].message)
|
||||
.show();
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, error) {
|
||||
$('#logo-message')
|
||||
.removeClass('alert-success')
|
||||
.addClass('alert alert-danger')
|
||||
.text('An error occurred: ' + error)
|
||||
.show();
|
||||
}
|
||||
});
|
||||
});
|
||||
$('#privateshop-settings-delete-temp-img').on('click', function() {
|
||||
var filename = $('#privateshop-settings-delete-temp-img').data('filename');
|
||||
$.ajax({
|
||||
type: 'POST',
|
||||
url: delete_url,
|
||||
dataType : 'json',
|
||||
data: {
|
||||
key: 'BACKGROUND_VIDEO_IMG'
|
||||
},
|
||||
success: function(response) {
|
||||
var messageDiv = $('#temp-img-message');
|
||||
messageDiv.hide();
|
||||
|
||||
if (response['success']) {
|
||||
location.reload();
|
||||
} else {
|
||||
messageDiv
|
||||
.removeClass('alert-success')
|
||||
.addClass('alert alert-danger')
|
||||
.text('An error occurred: ' + [response['message']].message)
|
||||
.show();
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, error) {
|
||||
$('#logo-message')
|
||||
.removeClass('alert-success')
|
||||
.addClass('alert alert-danger')
|
||||
.text('An error occurred: ' + error)
|
||||
.show();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function toggleCategoryField(fieldname, id) {
|
||||
if ($('input[name="' + fieldname + '"]:checked').val() == '1') {
|
||||
$('#' + id).show();
|
||||
} else {
|
||||
$('#' + id).hide();
|
||||
}
|
||||
}
|
||||
|
||||
function togglemodule(fieldname, cl) {
|
||||
if ($('input[name="' + fieldname + '"]:checked').val() == '1') {
|
||||
$('.' + cl).show();
|
||||
} else {
|
||||
$('.' + cl).hide();
|
||||
}
|
||||
}
|
||||
36
modules/privateshoplite/views/js/index.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2015 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2015 PrestaShop SA
|
||||
* @version Release: $Revision$
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
249
modules/privateshoplite/views/js/jquery.accordion.js
Normal file
@@ -0,0 +1,249 @@
|
||||
/**
|
||||
* BxSlider v4.1.2 - Fully loaded, responsive content slider
|
||||
* http://bxslider.com
|
||||
*
|
||||
* Copyright 2021, Steven Wanderski - http://stevenwanderski.com - http://bxcreative.com
|
||||
* Written while drinking Belgian ales and listening to jazz
|
||||
*
|
||||
* Released under the MIT license - http://opensource.org/licenses/MIT
|
||||
*/
|
||||
(function($) {
|
||||
$.fn.accordion = function(options) {
|
||||
initialize(this, options);
|
||||
};
|
||||
|
||||
//create the initial accordion
|
||||
function initialize(obj, options) {
|
||||
//build main options before element iteration
|
||||
var opts = $.extend({}, $.fn.accordion.defaults, options);
|
||||
|
||||
//store any opened default values to set cookie later
|
||||
var opened = '';
|
||||
|
||||
//iterate each matched object, bind, and open/close
|
||||
obj.each(function() {
|
||||
var $this = $(this);
|
||||
saveOpts($this, opts);
|
||||
|
||||
//bind it to the event
|
||||
if (opts.bind == 'mouseenter') {
|
||||
$this.bind('mouseenter', function(e) {
|
||||
e.preventDefault();
|
||||
toggle($this, opts);
|
||||
});
|
||||
}
|
||||
|
||||
//bind it to the event
|
||||
if (opts.bind == 'mouseover') {
|
||||
$this.bind('mouseover',function(e) {
|
||||
e.preventDefault();
|
||||
toggle($this, opts);
|
||||
});
|
||||
}
|
||||
|
||||
//bind it to the event
|
||||
if (opts.bind == 'click') {
|
||||
$this.bind('click', function(e) {
|
||||
e.preventDefault();
|
||||
toggle($this, opts);
|
||||
});
|
||||
}
|
||||
|
||||
//bind it to the event
|
||||
if (opts.bind == 'dblclick') {
|
||||
$this.bind('dblclick', function(e) {
|
||||
e.preventDefault();
|
||||
toggle($this, opts);
|
||||
});
|
||||
}
|
||||
|
||||
//initialize the panels
|
||||
//get the id for this element
|
||||
id = $this.attr('id');
|
||||
|
||||
//if not using cookies, open defauls
|
||||
if (!useCookies(opts)) {
|
||||
//close it if not defaulted to open
|
||||
if (id != opts.defaultOpen) {
|
||||
$this.addClass(opts.cssClose);
|
||||
$this.next().hide();
|
||||
} else { //its a default open, open it
|
||||
$this.addClass(opts.cssOpen);
|
||||
$this.next().show();
|
||||
opened = id;
|
||||
}
|
||||
} else { //can use cookies, use them now
|
||||
//has a cookie been set, this overrides default open
|
||||
if (issetCookie(opts)) {
|
||||
if (inCookie(id, opts) === false) {
|
||||
$this.addClass(opts.cssClose);
|
||||
$this.next().hide();
|
||||
} else {
|
||||
$this.addClass(opts.cssOpen);
|
||||
$this.next().show();
|
||||
opened = id;
|
||||
}
|
||||
} else { //a cookie hasn't been set open defaults
|
||||
if (id != opts.defaultOpen) {
|
||||
$this.addClass(opts.cssClose);
|
||||
$this.next().hide();
|
||||
} else { //its a default open, open it
|
||||
$this.addClass(opts.cssOpen);
|
||||
$this.next().show();
|
||||
opened = id;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//now that the loop is done, set the cookie
|
||||
if (opened.length > 0 && useCookies(opts)) {
|
||||
setCookie(opened, opts);
|
||||
} else { //there are none open, set cookie
|
||||
setCookie('', opts);
|
||||
}
|
||||
|
||||
return obj;
|
||||
};
|
||||
|
||||
//load opts from object
|
||||
function loadOpts($this) {
|
||||
return $this.data('accordion-opts');
|
||||
}
|
||||
|
||||
//save opts into object
|
||||
function saveOpts($this, opts) {
|
||||
return $this.data('accordion-opts', opts);
|
||||
}
|
||||
|
||||
//hides a accordion panel
|
||||
function close(opts) {
|
||||
opened = $(document).find('.' + opts.cssOpen);
|
||||
$.each(opened, function() {
|
||||
//give the proper class to the linked element
|
||||
$(this).addClass(opts.cssClose).removeClass(opts.cssOpen);
|
||||
opts.animateClose($(this), opts);
|
||||
});
|
||||
}
|
||||
|
||||
//opens a accordion panel
|
||||
function open($this, opts) {
|
||||
close(opts);
|
||||
//give the proper class to the linked element
|
||||
$this.removeClass(opts.cssClose).addClass(opts.cssOpen);
|
||||
|
||||
//open the element
|
||||
opts.animateOpen($this, opts);
|
||||
|
||||
//do cookies if plugin available
|
||||
if (useCookies(opts)) {
|
||||
// split the cookieOpen string by ","
|
||||
id = $this.attr('id');
|
||||
setCookie(id, opts);
|
||||
}
|
||||
}
|
||||
|
||||
//toggle a accordion on an event
|
||||
function toggle($this, opts) {
|
||||
// close the only open item
|
||||
if ($this.hasClass(opts.cssOpen))
|
||||
{
|
||||
close(opts);
|
||||
//do cookies if plugin available
|
||||
if (useCookies(opts)) {
|
||||
// split the cookieOpen string by ","
|
||||
setCookie('', opts);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
close(opts);
|
||||
//open a closed element
|
||||
open($this, opts);
|
||||
return false;
|
||||
}
|
||||
|
||||
//use cookies?
|
||||
function useCookies(opts) {
|
||||
//return false if cookie plugin not present or if a cookie name is not provided
|
||||
if (!$.cookie || opts.cookieName == '') {
|
||||
return false;
|
||||
}
|
||||
|
||||
//we can use cookies
|
||||
return true;
|
||||
}
|
||||
|
||||
//set a cookie
|
||||
function setCookie(value, opts)
|
||||
{
|
||||
//can use the cookie plugin
|
||||
if (!useCookies(opts)) { //no, quit here
|
||||
return false;
|
||||
}
|
||||
|
||||
//cookie plugin is available, lets set the cookie
|
||||
$.cookie(opts.cookieName, value, opts.cookieOptions);
|
||||
}
|
||||
|
||||
//check if a accordion is in the cookie
|
||||
function inCookie(value, opts)
|
||||
{
|
||||
//can use the cookie plugin
|
||||
if (!useCookies(opts)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
//if its not there we don't need to remove from it
|
||||
if (!issetCookie(opts)) { //quit here, don't have a cookie
|
||||
return false;
|
||||
}
|
||||
|
||||
//unescape it
|
||||
cookie = unescape($.cookie(opts.cookieName));
|
||||
|
||||
//is this value in the cookie arrray
|
||||
if (cookie != value) { //no, quit here
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//check if a cookie is set
|
||||
function issetCookie(opts)
|
||||
{
|
||||
//can we use the cookie plugin
|
||||
if (!useCookies(opts)) { //no, quit here
|
||||
return false;
|
||||
}
|
||||
|
||||
//is the cookie set
|
||||
if ($.cookie(opts.cookieName) == null) { //no, quit here
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// settings
|
||||
$.fn.accordion.defaults = {
|
||||
cssClose: 'accordion-close', //class you want to assign to a closed accordion header
|
||||
cssOpen: 'accordion-open', //class you want to assign an opened accordion header
|
||||
cookieName: 'accordion', //name of the cookie you want to set for this accordion
|
||||
cookieOptions: { //cookie options, see cookie plugin for details
|
||||
path: '/',
|
||||
expires: 7,
|
||||
domain: '',
|
||||
secure: ''
|
||||
},
|
||||
defaultOpen: '', //id that you want opened by default
|
||||
speed: 'slow', //speed of the slide effect
|
||||
bind: 'click', //event to bind to, supports click, dblclick, mouseover and mouseenter
|
||||
animateOpen: function (elem, opts) { //replace the standard slideDown with custom function
|
||||
elem.next().slideDown(opts.speed);
|
||||
},
|
||||
animateClose: function (elem, opts) { //replace the standard slideUp with custom function
|
||||
elem.next().slideUp(opts.speed);
|
||||
}
|
||||
};
|
||||
})(jQuery);
|
||||
758
modules/privateshoplite/views/js/jquery.autocomplete.js
Normal file
@@ -0,0 +1,758 @@
|
||||
/*
|
||||
* Autocomplete - jQuery plugin 1.0.2
|
||||
*
|
||||
* Copyright (c) 2021 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, Jörn Zaefferer
|
||||
*
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*
|
||||
* Revision: $Id: jquery.autocomplete.js 6844 2011-06-03 14:46:51Z dMetzger $
|
||||
*
|
||||
*/
|
||||
|
||||
;(function($) {
|
||||
|
||||
$.fn.extend({
|
||||
autocomplete: function(urlOrData, options) {
|
||||
var isUrl = typeof urlOrData == "string";
|
||||
options = $.extend({}, $.Autocompleter.defaults, {
|
||||
url: isUrl ? urlOrData : null,
|
||||
data: isUrl ? null : urlOrData,
|
||||
delay: isUrl ? $.Autocompleter.defaults.delay : 10,
|
||||
max: options && !options.scroll ? 10 : 150
|
||||
}, options);
|
||||
|
||||
// if highlight is set to false, replace it with a do-nothing function
|
||||
options.highlight = options.highlight || function(value) { return value; };
|
||||
|
||||
// if the formatMatch option is not specified, then use formatItem for backwards compatibility
|
||||
options.formatMatch = options.formatMatch || options.formatItem;
|
||||
|
||||
return this.each(function() {
|
||||
new $.Autocompleter(this, options);
|
||||
});
|
||||
},
|
||||
result: function(handler) {
|
||||
return this.bind("result", handler);
|
||||
},
|
||||
search: function(handler) {
|
||||
return this.trigger("search", [handler]);
|
||||
},
|
||||
flushCache: function() {
|
||||
return this.trigger("flushCache");
|
||||
},
|
||||
setOptions: function(options){
|
||||
return this.trigger("setOptions", [options]);
|
||||
},
|
||||
unautocomplete: function() {
|
||||
return this.trigger("unautocomplete");
|
||||
}
|
||||
});
|
||||
|
||||
$.Autocompleter = function(input, options) {
|
||||
|
||||
var KEY = {
|
||||
UP: 38,
|
||||
DOWN: 40,
|
||||
DEL: 46,
|
||||
TAB: 9,
|
||||
RETURN: 13,
|
||||
ESC: 27,
|
||||
COMMA: 188,
|
||||
PAGEUP: 33,
|
||||
PAGEDOWN: 34,
|
||||
BACKSPACE: 8
|
||||
};
|
||||
|
||||
// Create $ object for input element
|
||||
var $input = $(input).attr("autocomplete", "off").addClass(options.inputClass);
|
||||
|
||||
var timeout;
|
||||
var previousValue = "";
|
||||
var cache = $.Autocompleter.Cache(options);
|
||||
var hasFocus = 0;
|
||||
var lastKeyPressCode;
|
||||
var config = {
|
||||
mouseDownOnSelect: false
|
||||
};
|
||||
var select = $.Autocompleter.Select(options, input, selectCurrent, config);
|
||||
|
||||
var blockSubmit;
|
||||
|
||||
// prevent form submit in opera when selecting with return key
|
||||
$.browser.opera && $(input.form).bind("submit.autocomplete", function() {
|
||||
if (blockSubmit) {
|
||||
blockSubmit = false;
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
// only opera doesn't trigger keydown multiple times while pressed, others don't work with keypress at all
|
||||
$input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete", function(event) {
|
||||
// track last key pressed
|
||||
lastKeyPressCode = event.keyCode;
|
||||
switch(event.keyCode) {
|
||||
|
||||
case KEY.UP:
|
||||
event.preventDefault();
|
||||
if ( select.visible() ) {
|
||||
select.prev();
|
||||
} else {
|
||||
onChange(0, true);
|
||||
}
|
||||
break;
|
||||
|
||||
case KEY.DOWN:
|
||||
event.preventDefault();
|
||||
if ( select.visible() ) {
|
||||
select.next();
|
||||
} else {
|
||||
onChange(0, true);
|
||||
}
|
||||
break;
|
||||
|
||||
case KEY.PAGEUP:
|
||||
event.preventDefault();
|
||||
if ( select.visible() ) {
|
||||
select.pageUp();
|
||||
} else {
|
||||
onChange(0, true);
|
||||
}
|
||||
break;
|
||||
|
||||
case KEY.PAGEDOWN:
|
||||
event.preventDefault();
|
||||
if ( select.visible() ) {
|
||||
select.pageDown();
|
||||
} else {
|
||||
onChange(0, true);
|
||||
}
|
||||
break;
|
||||
|
||||
// matches also semicolon
|
||||
case options.multiple && $.trim(options.multipleSeparator) == "," && KEY.COMMA:
|
||||
case KEY.TAB:
|
||||
case KEY.RETURN:
|
||||
if( selectCurrent() ) {
|
||||
// stop default to prevent a form submit, Opera needs special handling
|
||||
event.preventDefault();
|
||||
blockSubmit = true;
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
|
||||
case KEY.ESC:
|
||||
select.hide();
|
||||
break;
|
||||
|
||||
default:
|
||||
clearTimeout(timeout);
|
||||
timeout = setTimeout(onChange, options.delay);
|
||||
break;
|
||||
}
|
||||
}).focus(function(){
|
||||
// track whether the field has focus, we shouldn't process any
|
||||
// results if the field no longer has focus
|
||||
hasFocus++;
|
||||
}).blur(function() {
|
||||
hasFocus = 0;
|
||||
if (!config.mouseDownOnSelect) {
|
||||
hideResults();
|
||||
}
|
||||
}).click(function() {
|
||||
// show select when clicking in a focused field
|
||||
if ( hasFocus++ > 1 && !select.visible() ) {
|
||||
onChange(0, true);
|
||||
}
|
||||
}).bind("search", function() {
|
||||
// TODO why not just specifying both arguments?
|
||||
var fn = (arguments.length > 1) ? arguments[1] : null;
|
||||
function findValueCallback(q, data) {
|
||||
var result;
|
||||
if( data && data.length ) {
|
||||
for (var i=0; i < data.length; i++) {
|
||||
if( data[i].result.toLowerCase() == q.toLowerCase() ) {
|
||||
result = data[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if( typeof fn == "function" ) fn(result);
|
||||
else $input.trigger("result", result && [result.data, result.value]);
|
||||
}
|
||||
$.each(trimWords($input.val()), function(i, value) {
|
||||
request(value, findValueCallback, findValueCallback);
|
||||
});
|
||||
}).bind("flushCache", function() {
|
||||
cache.flush();
|
||||
}).bind("setOptions", function() {
|
||||
$.extend(options, arguments[1]);
|
||||
// if we've updated the data, repopulate
|
||||
if ( "data" in arguments[1] )
|
||||
cache.populate();
|
||||
}).bind("unautocomplete", function() {
|
||||
select.unbind();
|
||||
$input.unbind();
|
||||
$(input.form).unbind(".autocomplete");
|
||||
});
|
||||
|
||||
|
||||
function selectCurrent() {
|
||||
var selected = select.selected();
|
||||
if( !selected )
|
||||
return false;
|
||||
|
||||
var v = selected.result;
|
||||
previousValue = v;
|
||||
|
||||
if ( options.multiple ) {
|
||||
var words = trimWords($input.val());
|
||||
if ( words.length > 1 ) {
|
||||
v = words.slice(0, words.length - 1).join( options.multipleSeparator ) + options.multipleSeparator + v;
|
||||
}
|
||||
v += options.multipleSeparator;
|
||||
}
|
||||
|
||||
$input.val(v);
|
||||
hideResultsNow();
|
||||
$input.trigger("result", [selected.data, selected.value]);
|
||||
return true;
|
||||
}
|
||||
|
||||
function onChange(crap, skipPrevCheck) {
|
||||
if( lastKeyPressCode == KEY.DEL ) {
|
||||
select.hide();
|
||||
return;
|
||||
}
|
||||
|
||||
var currentValue = $input.val();
|
||||
|
||||
if ( !skipPrevCheck && currentValue == previousValue )
|
||||
return;
|
||||
|
||||
previousValue = currentValue;
|
||||
|
||||
currentValue = lastWord(currentValue);
|
||||
if ( currentValue.length >= options.minChars) {
|
||||
$input.addClass(options.loadingClass);
|
||||
if (!options.matchCase)
|
||||
currentValue = currentValue.toLowerCase();
|
||||
request(currentValue, receiveData, hideResultsNow);
|
||||
} else {
|
||||
stopLoading();
|
||||
select.hide();
|
||||
}
|
||||
};
|
||||
|
||||
function trimWords(value) {
|
||||
if ( !value ) {
|
||||
return [""];
|
||||
}
|
||||
var words = value.split( options.multipleSeparator );
|
||||
var result = [];
|
||||
$.each(words, function(i, value) {
|
||||
if ( $.trim(value) )
|
||||
result[i] = $.trim(value);
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
function lastWord(value) {
|
||||
if ( !options.multiple )
|
||||
return value;
|
||||
var words = trimWords(value);
|
||||
return words[words.length - 1];
|
||||
}
|
||||
|
||||
// fills in the input box w/the first match (assumed to be the best match)
|
||||
// q: the term entered
|
||||
// sValue: the first matching result
|
||||
function autoFill(q, sValue){
|
||||
// autofill in the complete box w/the first match as long as the user hasn't entered in more data
|
||||
// if the last user key pressed was backspace, don't autofill
|
||||
if( options.autoFill && (lastWord($input.val()).toLowerCase() == q.toLowerCase()) && lastKeyPressCode != KEY.BACKSPACE ) {
|
||||
// fill in the value (keep the case the user has typed)
|
||||
$input.val($input.val() + sValue.substring(lastWord(previousValue).length));
|
||||
// select the portion of the value not typed by the user (so the next character will erase)
|
||||
$.Autocompleter.Selection(input, previousValue.length, previousValue.length + sValue.length);
|
||||
}
|
||||
};
|
||||
|
||||
function hideResults() {
|
||||
clearTimeout(timeout);
|
||||
timeout = setTimeout(hideResultsNow, 200);
|
||||
};
|
||||
|
||||
function hideResultsNow() {
|
||||
var wasVisible = select.visible();
|
||||
select.hide();
|
||||
clearTimeout(timeout);
|
||||
stopLoading();
|
||||
if (options.mustMatch) {
|
||||
// call search and run callback
|
||||
$input.search(
|
||||
function (result){
|
||||
// if no value found, clear the input box
|
||||
if( !result ) {
|
||||
if (options.multiple) {
|
||||
var words = trimWords($input.val()).slice(0, -1);
|
||||
$input.val( words.join(options.multipleSeparator) + (words.length ? options.multipleSeparator : "") );
|
||||
}
|
||||
else
|
||||
$input.val( "" );
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
if (wasVisible)
|
||||
// position cursor at end of input field
|
||||
$.Autocompleter.Selection(input, input.value.length, input.value.length);
|
||||
};
|
||||
|
||||
function receiveData(q, data) {
|
||||
if ( data && data.length && hasFocus ) {
|
||||
stopLoading();
|
||||
select.display(data, q);
|
||||
autoFill(q, data[0].value);
|
||||
select.show();
|
||||
} else {
|
||||
hideResultsNow();
|
||||
}
|
||||
};
|
||||
|
||||
function request(term, success, failure) {
|
||||
if (!options.matchCase)
|
||||
term = term.toLowerCase();
|
||||
var data = cache.load(term);
|
||||
// recieve the cached data
|
||||
if (data && data.length) {
|
||||
success(term, data);
|
||||
// if an AJAX url has been supplied, try loading the data now
|
||||
} else if( (typeof options.url == "string") && (options.url.length > 0) ){
|
||||
|
||||
var extraParams = {
|
||||
timestamp: +new Date()
|
||||
};
|
||||
$.each(options.extraParams, function(key, param) {
|
||||
extraParams[key] = typeof param == "function" ? param() : param;
|
||||
});
|
||||
|
||||
$.ajax({
|
||||
// try to leverage ajaxQueue plugin to abort previous requests
|
||||
mode: "abort",
|
||||
// limit abortion to this input
|
||||
port: "autocomplete" + input.name,
|
||||
dataType: options.dataType,
|
||||
url: options.url,
|
||||
data: $.extend({
|
||||
q: lastWord(term),
|
||||
limit: options.max
|
||||
}, extraParams),
|
||||
success: function(data) {
|
||||
var parsed = options.parse && options.parse(data) || parse(data);
|
||||
cache.add(term, parsed);
|
||||
success(term, parsed);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// if we have a failure, we need to empty the list -- this prevents the the [TAB] key from selecting the last successful match
|
||||
select.emptyList();
|
||||
failure(term);
|
||||
}
|
||||
};
|
||||
|
||||
function parse(data) {
|
||||
var parsed = [];
|
||||
var rows = data.split("\n");
|
||||
for (var i=0; i < rows.length; i++) {
|
||||
var row = $.trim(rows[i]);
|
||||
if (row) {
|
||||
row = row.split("|");
|
||||
parsed[parsed.length] = {
|
||||
data: row,
|
||||
value: row[0],
|
||||
result: options.formatResult && options.formatResult(row, row[0]) || row[0]
|
||||
};
|
||||
}
|
||||
}
|
||||
return parsed;
|
||||
};
|
||||
|
||||
function stopLoading() {
|
||||
$input.removeClass(options.loadingClass);
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
$.Autocompleter.defaults = {
|
||||
inputClass: "ac_input",
|
||||
resultsClass: "ac_results",
|
||||
loadingClass: "ac_loading",
|
||||
minChars: 1,
|
||||
delay: 400,
|
||||
matchCase: false,
|
||||
matchSubset: true,
|
||||
matchContains: false,
|
||||
cacheLength: 10,
|
||||
max: 100,
|
||||
mustMatch: false,
|
||||
extraParams: {},
|
||||
selectFirst: true,
|
||||
formatItem: function(row) { return row[0]; },
|
||||
formatMatch: null,
|
||||
autoFill: false,
|
||||
width: 0,
|
||||
multiple: false,
|
||||
multipleSeparator: ", ",
|
||||
highlight: function(value, term) {
|
||||
return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");
|
||||
},
|
||||
scroll: true,
|
||||
scrollHeight: 180
|
||||
};
|
||||
|
||||
$.Autocompleter.Cache = function(options) {
|
||||
|
||||
var data = {};
|
||||
var length = 0;
|
||||
|
||||
function matchSubset(s, sub) {
|
||||
if (!options.matchCase)
|
||||
s = s.toLowerCase();
|
||||
var i = s.indexOf(sub);
|
||||
if (i == -1) return false;
|
||||
return i == 0 || options.matchContains;
|
||||
};
|
||||
|
||||
function add(q, value) {
|
||||
if (length > options.cacheLength){
|
||||
flush();
|
||||
}
|
||||
if (!data[q]){
|
||||
length++;
|
||||
}
|
||||
data[q] = value;
|
||||
}
|
||||
|
||||
function populate(){
|
||||
if( !options.data ) return false;
|
||||
// track the matches
|
||||
var stMatchSets = {},
|
||||
nullData = 0;
|
||||
|
||||
// no url was specified, we need to adjust the cache length to make sure it fits the local data store
|
||||
if( !options.url ) options.cacheLength = 1;
|
||||
|
||||
// track all options for minChars = 0
|
||||
stMatchSets[""] = [];
|
||||
|
||||
// loop through the array and create a lookup structure
|
||||
for ( var i = 0, ol = options.data.length; i < ol; i++ ) {
|
||||
var rawValue = options.data[i];
|
||||
// if rawValue is a string, make an array otherwise just reference the array
|
||||
rawValue = (typeof rawValue == "string") ? [rawValue] : rawValue;
|
||||
|
||||
var value = options.formatMatch(rawValue, i+1, options.data.length);
|
||||
if ( value === false )
|
||||
continue;
|
||||
|
||||
var firstChar = value.charAt(0).toLowerCase();
|
||||
// if no lookup array for this character exists, look it up now
|
||||
if( !stMatchSets[firstChar] )
|
||||
stMatchSets[firstChar] = [];
|
||||
|
||||
// if the match is a string
|
||||
var row = {
|
||||
value: value,
|
||||
data: rawValue,
|
||||
result: options.formatResult && options.formatResult(rawValue) || value
|
||||
};
|
||||
|
||||
// push the current match into the set list
|
||||
stMatchSets[firstChar].push(row);
|
||||
|
||||
// keep track of minChars zero items
|
||||
if ( nullData++ < options.max ) {
|
||||
stMatchSets[""].push(row);
|
||||
}
|
||||
};
|
||||
|
||||
// add the data items to the cache
|
||||
$.each(stMatchSets, function(i, value) {
|
||||
// increase the cache size
|
||||
options.cacheLength++;
|
||||
// add to the cache
|
||||
add(i, value);
|
||||
});
|
||||
}
|
||||
|
||||
// populate any existing data
|
||||
setTimeout(populate, 25);
|
||||
|
||||
function flush(){
|
||||
data = {};
|
||||
length = 0;
|
||||
}
|
||||
|
||||
return {
|
||||
flush: flush,
|
||||
add: add,
|
||||
populate: populate,
|
||||
load: function(q) {
|
||||
if (!options.cacheLength || !length)
|
||||
return null;
|
||||
/*
|
||||
* if dealing w/local data and matchContains than we must make sure
|
||||
* to loop through all the data collections looking for matches
|
||||
*/
|
||||
if( !options.url && options.matchContains ){
|
||||
// track all matches
|
||||
var csub = [];
|
||||
// loop through all the data grids for matches
|
||||
for( var k in data ){
|
||||
// don't search through the stMatchSets[""] (minChars: 0) cache
|
||||
// this prevents duplicates
|
||||
if( k.length > 0 ){
|
||||
var c = data[k];
|
||||
$.each(c, function(i, x) {
|
||||
// if we've got a match, add it to the array
|
||||
if (matchSubset(x.value, q)) {
|
||||
csub.push(x);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
return csub;
|
||||
} else
|
||||
// if the exact item exists, use it
|
||||
if (data[q]){
|
||||
return data[q];
|
||||
} else
|
||||
if (options.matchSubset) {
|
||||
for (var i = q.length - 1; i >= options.minChars; i--) {
|
||||
var c = data[q.substr(0, i)];
|
||||
if (c) {
|
||||
var csub = [];
|
||||
$.each(c, function(i, x) {
|
||||
if (matchSubset(x.value, q)) {
|
||||
csub[csub.length] = x;
|
||||
}
|
||||
});
|
||||
return csub;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
$.Autocompleter.Select = function (options, input, select, config) {
|
||||
var CLASSES = {
|
||||
ACTIVE: "ac_over"
|
||||
};
|
||||
|
||||
var listItems,
|
||||
active = -1,
|
||||
data,
|
||||
term = "",
|
||||
needsInit = true,
|
||||
element,
|
||||
list;
|
||||
|
||||
// Create results
|
||||
function init() {
|
||||
if (!needsInit)
|
||||
return;
|
||||
element = $("<div/>")
|
||||
.hide()
|
||||
.addClass(options.resultsClass)
|
||||
.css("position", "absolute")
|
||||
.appendTo(document.body);
|
||||
|
||||
list = $("<ul/>").appendTo(element).mouseover( function(event) {
|
||||
if(target(event).nodeName && target(event).nodeName.toUpperCase() == 'LI') {
|
||||
active = $("li", list).removeClass(CLASSES.ACTIVE).index(target(event));
|
||||
$(target(event)).addClass(CLASSES.ACTIVE);
|
||||
}
|
||||
}).click(function(event) {
|
||||
$(target(event)).addClass(CLASSES.ACTIVE);
|
||||
select();
|
||||
// TODO provide option to avoid setting focus again after selection? useful for cleanup-on-focus
|
||||
input.focus();
|
||||
return false;
|
||||
}).mousedown(function() {
|
||||
config.mouseDownOnSelect = true;
|
||||
}).mouseup(function() {
|
||||
config.mouseDownOnSelect = false;
|
||||
});
|
||||
|
||||
if( options.width > 0 )
|
||||
element.css("width", options.width);
|
||||
|
||||
needsInit = false;
|
||||
}
|
||||
|
||||
function target(event) {
|
||||
var element = event.target;
|
||||
while(element && element.tagName != "LI")
|
||||
element = element.parentNode;
|
||||
// more fun with IE, sometimes event.target is empty, just ignore it then
|
||||
if(!element)
|
||||
return [];
|
||||
return element;
|
||||
}
|
||||
|
||||
function moveSelect(step) {
|
||||
listItems.slice(active, active + 1).removeClass(CLASSES.ACTIVE);
|
||||
movePosition(step);
|
||||
var activeItem = listItems.slice(active, active + 1).addClass(CLASSES.ACTIVE);
|
||||
if(options.scroll) {
|
||||
var offset = 0;
|
||||
listItems.slice(0, active).each(function() {
|
||||
offset += this.offsetHeight;
|
||||
});
|
||||
if((offset + activeItem[0].offsetHeight - list.scrollTop()) > list[0].clientHeight) {
|
||||
list.scrollTop(offset + activeItem[0].offsetHeight - list.innerHeight());
|
||||
} else if(offset < list.scrollTop()) {
|
||||
list.scrollTop(offset);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
function movePosition(step) {
|
||||
active += step;
|
||||
if (active < 0) {
|
||||
active = listItems.size() - 1;
|
||||
} else if (active >= listItems.size()) {
|
||||
active = 0;
|
||||
}
|
||||
}
|
||||
|
||||
function limitNumberOfItems(available) {
|
||||
return options.max && options.max < available
|
||||
? options.max
|
||||
: available;
|
||||
}
|
||||
|
||||
function fillList() {
|
||||
list.empty();
|
||||
var max = limitNumberOfItems(data.length);
|
||||
for (var i=0; i < max; i++) {
|
||||
if (!data[i])
|
||||
continue;
|
||||
var formatted = options.formatItem(data[i].data, i+1, max, data[i].value, term);
|
||||
if ( formatted === false )
|
||||
continue;
|
||||
var li = $("<li/>").html( options.highlight(formatted, term) ).addClass(i%2 == 0 ? "ac_even" : "ac_odd").appendTo(list)[0];
|
||||
$.data(li, "ac_data", data[i]);
|
||||
}
|
||||
listItems = list.find("li");
|
||||
if ( options.selectFirst ) {
|
||||
listItems.slice(0, 1).addClass(CLASSES.ACTIVE);
|
||||
active = 0;
|
||||
}
|
||||
// apply bgiframe if available
|
||||
if ( $.fn.bgiframe )
|
||||
list.bgiframe();
|
||||
}
|
||||
|
||||
return {
|
||||
display: function(d, q) {
|
||||
init();
|
||||
data = d;
|
||||
term = q;
|
||||
fillList();
|
||||
},
|
||||
next: function() {
|
||||
moveSelect(1);
|
||||
},
|
||||
prev: function() {
|
||||
moveSelect(-1);
|
||||
},
|
||||
pageUp: function() {
|
||||
if (active != 0 && active - 8 < 0) {
|
||||
moveSelect( -active );
|
||||
} else {
|
||||
moveSelect(-8);
|
||||
}
|
||||
},
|
||||
pageDown: function() {
|
||||
if (active != listItems.size() - 1 && active + 8 > listItems.size()) {
|
||||
moveSelect( listItems.size() - 1 - active );
|
||||
} else {
|
||||
moveSelect(8);
|
||||
}
|
||||
},
|
||||
hide: function() {
|
||||
element && element.hide();
|
||||
listItems && listItems.removeClass(CLASSES.ACTIVE);
|
||||
active = -1;
|
||||
},
|
||||
visible : function() {
|
||||
return element && element.is(":visible");
|
||||
},
|
||||
current: function() {
|
||||
return this.visible() && (listItems.filter("." + CLASSES.ACTIVE)[0] || options.selectFirst && listItems[0]);
|
||||
},
|
||||
show: function() {
|
||||
var offset = $(input).offset();
|
||||
element.css({
|
||||
width: typeof options.width == "string" || options.width > 0 ? options.width : ($(input).width() + parseInt($(input).css('padding-left')) + parseInt($(input).css('padding-right')) + parseInt($(input).css('margin-left')) + parseInt($(input).css('margin-right'))),
|
||||
top: offset.top + input.offsetHeight,
|
||||
left: offset.left
|
||||
}).show();
|
||||
if(options.scroll) {
|
||||
list.css({
|
||||
maxHeight: options.scrollHeight,
|
||||
overflow: 'auto'
|
||||
});
|
||||
|
||||
if($.browser.msie && typeof document.body.style.maxHeight === "undefined") {
|
||||
var listHeight = 0;
|
||||
listItems.each(function() {
|
||||
listHeight += this.offsetHeight;
|
||||
});
|
||||
var scrollbarsVisible = listHeight > options.scrollHeight;
|
||||
list.css('height', scrollbarsVisible ? options.scrollHeight : listHeight );
|
||||
if (!scrollbarsVisible) {
|
||||
// IE doesn't recalculate width when scrollbar disappears
|
||||
listItems.width( list.width() - parseInt(listItems.css("padding-left")) - parseInt(listItems.css("padding-right")) );
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
selected: function() {
|
||||
var selected = listItems && listItems.filter("." + CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);
|
||||
return selected && selected.length && $.data(selected[0], "ac_data");
|
||||
},
|
||||
emptyList: function (){
|
||||
list && list.empty();
|
||||
},
|
||||
unbind: function() {
|
||||
element && element.remove();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
$.Autocompleter.Selection = function(field, start, end) {
|
||||
if( field.createTextRange ){
|
||||
var selRange = field.createTextRange();
|
||||
selRange.collapse(true);
|
||||
selRange.moveStart("character", start);
|
||||
selRange.moveEnd("character", end);
|
||||
selRange.select();
|
||||
} else if( field.setSelectionRange ){
|
||||
field.setSelectionRange(start, end);
|
||||
} else {
|
||||
if( field.selectionStart ){
|
||||
field.selectionStart = start;
|
||||
field.selectionEnd = end;
|
||||
}
|
||||
}
|
||||
field.focus();
|
||||
};
|
||||
|
||||
})(jQuery);
|
||||
162
modules/privateshoplite/views/js/jquery.tubular.1.0.js
Normal file
@@ -0,0 +1,162 @@
|
||||
/**
|
||||
* 2007-2022 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* https://opensource.org/licenses/OSL-3.0
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007 PrestaShop SA
|
||||
* @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
;(function ($, window) {
|
||||
|
||||
// test for feature support and return if failure
|
||||
|
||||
// defaults
|
||||
var defaults = {
|
||||
ratio: 16/9, // usually either 4/3 or 16/9 -- tweak as needed
|
||||
videoId: 'ZCAnLxRvNNc', // toy robot in space is a good default, no?
|
||||
mute: true,
|
||||
repeat: true,
|
||||
width: $(window).width(),
|
||||
wrapperZIndex: 99,
|
||||
playButtonClass: 'tubular-play',
|
||||
pauseButtonClass: 'tubular-pause',
|
||||
muteButtonClass: 'tubular-mute',
|
||||
volumeUpClass: 'tubular-volume-up',
|
||||
volumeDownClass: 'tubular-volume-down',
|
||||
increaseVolumeBy: 10,
|
||||
start: 0
|
||||
};
|
||||
|
||||
// methods
|
||||
|
||||
var tubular = function(node, options) { // should be called on the wrapper div
|
||||
var options = $.extend({}, defaults, options),
|
||||
$body = $('body') // cache body node
|
||||
$node = $(node); // cache wrapper node
|
||||
|
||||
// build container
|
||||
var tubularContainer = '<div id="tubular-container" style="overflow: hidden; position: fixed; z-index: 1; width: 100%; height: 100%; left:0;top:0;"><div id="tubular-player" style="position: absolute"></div></div><div id="tubular-shield" style="width: 100%; height: 100%; z-index: 2; position: absolute; left: 0; top: 0;"></div>';
|
||||
|
||||
// set up css prereq's, inject tubular container and set up wrapper defaults
|
||||
$('html,body').css({'width': '100%', 'height': '100%'});
|
||||
$body.prepend(tubularContainer);
|
||||
$node.css({position: 'relative', 'z-index': options.wrapperZIndex});
|
||||
|
||||
// set up iframe player, use global scope so YT api can talk
|
||||
window.player;
|
||||
window.onYouTubeIframeAPIReady = function() {
|
||||
player = new YT.Player('tubular-player', {
|
||||
width: options.width,
|
||||
height: Math.ceil(options.width / options.ratio),
|
||||
videoId: options.videoId,
|
||||
playerVars: {
|
||||
controls: 0,
|
||||
showinfo: 0,
|
||||
modestbranding: 1,
|
||||
wmode: 'transparent',
|
||||
rel : 0
|
||||
},
|
||||
events: {
|
||||
'onReady': onPlayerReady,
|
||||
'onStateChange': onPlayerStateChange
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
window.onPlayerReady = function(e) {
|
||||
resize();
|
||||
if (options.mute) e.target.mute();
|
||||
e.target.seekTo(options.start);
|
||||
e.target.playVideo();
|
||||
}
|
||||
|
||||
window.onPlayerStateChange = function(state) {
|
||||
if (state.data === 0 && options.repeat) { // video ended and repeat option is set true
|
||||
player.seekTo(options.start); // restart
|
||||
}
|
||||
}
|
||||
|
||||
// resize handler updates width, height and offset of player after resize/init
|
||||
var resize = function() {
|
||||
var width = $(window).width(),
|
||||
pWidth, // player width, to be defined
|
||||
height = $(window).height(),
|
||||
pHeight, // player height, tbd
|
||||
$tubularPlayer = $('#tubular-player');
|
||||
|
||||
// when screen aspect ratio differs from video, video must center and underlay one dimension
|
||||
|
||||
if (width / options.ratio < height) { // if new video height < window height (gap underneath)
|
||||
pWidth = Math.ceil(height * options.ratio); // get new player width
|
||||
$tubularPlayer.width(pWidth).height(height).css({left: (width - pWidth) / 2, top: 0}); // player width is greater, offset left; reset top
|
||||
} else { // new video width < window width (gap to right)
|
||||
pHeight = Math.ceil(width / options.ratio); // get new player height
|
||||
$tubularPlayer.width(width).height(pHeight).css({left: 0, top: (height - pHeight) / 2}); // player height is greater, offset top; reset left
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// events
|
||||
$(window).on('resize.tubular', function() {
|
||||
resize();
|
||||
})
|
||||
|
||||
$('body').on('click','.' + options.playButtonClass, function(e) { // play button
|
||||
e.preventDefault();
|
||||
player.playVideo();
|
||||
}).on('click', '.' + options.pauseButtonClass, function(e) { // pause button
|
||||
e.preventDefault();
|
||||
player.pauseVideo();
|
||||
}).on('click', '.' + options.muteButtonClass, function(e) { // mute button
|
||||
e.preventDefault();
|
||||
(player.isMuted()) ? player.unMute() : player.mute();
|
||||
}).on('click', '.' + options.volumeDownClass, function(e) { // volume down button
|
||||
e.preventDefault();
|
||||
var currentVolume = player.getVolume();
|
||||
if (currentVolume < options.increaseVolumeBy) currentVolume = options.increaseVolumeBy;
|
||||
player.setVolume(currentVolume - options.increaseVolumeBy);
|
||||
}).on('click', '.' + options.volumeUpClass, function(e) { // volume up button
|
||||
e.preventDefault();
|
||||
if (player.isMuted()) player.unMute(); // if mute is on, unmute
|
||||
var currentVolume = player.getVolume();
|
||||
if (currentVolume > 100 - options.increaseVolumeBy) currentVolume = 100 - options.increaseVolumeBy;
|
||||
player.setVolume(currentVolume + options.increaseVolumeBy);
|
||||
})
|
||||
}
|
||||
|
||||
// load yt iframe js api
|
||||
|
||||
var tag = document.createElement('script');
|
||||
tag.src = "//www.youtube.com/iframe_api";
|
||||
var firstScriptTag = document.getElementsByTagName('script')[0];
|
||||
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
|
||||
|
||||
// create plugin
|
||||
|
||||
$.fn.tubular = function (options) {
|
||||
return this.each(function () {
|
||||
if (!$.data(this, 'tubular_instantiated')) { // let's only run one
|
||||
$.data(this, 'tubular_instantiated',
|
||||
tubular(this, options));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
})(jQuery, window);
|
||||
1038
modules/privateshoplite/views/js/jquery.uniform.js
Normal file
241
modules/privateshoplite/views/js/private-login.js
Normal file
@@ -0,0 +1,241 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
// load() event and resize() event are combined
|
||||
$(window).ready(responsiveFn).resize(responsiveFn);
|
||||
|
||||
$(function(){
|
||||
setTimeout(function(){
|
||||
$.uniform.restore(".no-uniform");
|
||||
//$(".no-uniform").not('.noUniform').uniform();
|
||||
}, 500);
|
||||
});
|
||||
|
||||
function SignUp()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').hide();
|
||||
$('#new-private-account').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function Login()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').show();
|
||||
$('#new-private-account').hide();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function forgot_password()
|
||||
{
|
||||
//$('#ps17_errors').html('').hide();
|
||||
$('#private-login').hide();
|
||||
$('#private-lost-password').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function BackToLogin()
|
||||
{
|
||||
if (typeof baseUri === 'undefined') {
|
||||
baseUri = prestashop.urls.base_url;
|
||||
}
|
||||
|
||||
if (getUrlParameter('reset_token') !== '') {
|
||||
window.location.replace(baseUri);
|
||||
} else {
|
||||
$('.private_error_resp').html('').hide();
|
||||
$('#private-lost-password').hide();
|
||||
$('#private-login').fadeIn('slow');
|
||||
}
|
||||
}
|
||||
|
||||
function getUrlParameter(name)
|
||||
{
|
||||
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
|
||||
var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
|
||||
var results = regex.exec(location.search);
|
||||
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
|
||||
}
|
||||
|
||||
function responsiveFn()
|
||||
{
|
||||
width = $( window ).width();
|
||||
height = $( window ).height();
|
||||
|
||||
if(width <= 320) {
|
||||
$('#login_form').removeClass('box');
|
||||
}
|
||||
else {
|
||||
$('#login_form').addClass('box');
|
||||
}
|
||||
}
|
||||
|
||||
// function toggleVis(e) {
|
||||
// var elm = $(e).closest('.input-group').children('input.js-visible-password');
|
||||
// if (elm.attr('type') === 'password') {
|
||||
// elm.attr('type')= 'text';
|
||||
// $(e).text($(e).data('textHide'));
|
||||
// } else {
|
||||
// elm.attr('type')='password';
|
||||
// $(e).text($(e).data('textShow'));
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
function registerNewUser(el) {
|
||||
var gif_loader = $('#gif_loader');
|
||||
gif_loader.show();
|
||||
var form_data = $('#new-private-account form').serialize();
|
||||
var formData = new FormData($('#new-private-account form').get(0));
|
||||
var requestData = {
|
||||
type : "POST",
|
||||
cache : false,
|
||||
url : ajax_url,
|
||||
dataType : "json",
|
||||
processData: false,
|
||||
contentType: false,
|
||||
data : formData,
|
||||
success: function(jsonData) {
|
||||
if (jsonData.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>' + jsonData.html + '</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
gif_loader.hide();
|
||||
} else {
|
||||
$('#error_holder').html('');
|
||||
if (jsonData.redirect === true) {
|
||||
window.location = jsonData.redirect_url;
|
||||
} else {
|
||||
$('#new-private-account').html(jsonData.message);
|
||||
}
|
||||
|
||||
$('#private-back').show();
|
||||
gif_loader.hide();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(requestData);
|
||||
}
|
||||
|
||||
function setBGvideo(value) {
|
||||
|
||||
var wrapper = (psNew) ? '#wrapper' : '#center_column';
|
||||
if (wrapper === '#wrapper') {
|
||||
// $(wrapper).addClass('center_align bg_opacity');
|
||||
$(wrapper).css({
|
||||
'background': 'transparent'
|
||||
});
|
||||
}
|
||||
|
||||
$(wrapper).tubular({
|
||||
videoId: value,
|
||||
onError: function() {
|
||||
console.error('Error setting background video');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function ContactForm()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private_page_password_form').hide();
|
||||
$('#private-login').hide();
|
||||
$('#private-contact-form').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
function backToPrevious() {
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-contact-form').hide()
|
||||
$('#private-login').show();
|
||||
}
|
||||
function sendMessage(el) {
|
||||
var gif_loader = $('#gif_loader');
|
||||
gif_loader.show();
|
||||
var form_data = $('#private-contact_form form').serialize();
|
||||
var formData = new FormData($(el).closest('form').get(0));
|
||||
var requestData = {
|
||||
type : 'POST',
|
||||
url : message_url,
|
||||
dataType : 'json',
|
||||
data : formData,
|
||||
contentType : false,
|
||||
cache : false,
|
||||
processData : false,
|
||||
success: function(jsonData) {
|
||||
if (jsonData.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>' + jsonData.html + '</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
gif_loader.hide();
|
||||
} else {
|
||||
$('#error_holder').html('');
|
||||
if (jsonData.redirect === true) {
|
||||
window.location = jsonData.redirect_url;
|
||||
} else {
|
||||
$('#new-private-account').html(jsonData.message);
|
||||
}
|
||||
|
||||
$('#privateshoplite_pending_message').html('You message request has been sent');
|
||||
$('#customer_message_email').val('');
|
||||
$('#customer_message_subject').val('');
|
||||
$('#customer_message_message').val('');
|
||||
$('#default_back').hide();
|
||||
$('#private-back').show();
|
||||
gif_loader.hide();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(requestData);
|
||||
|
||||
}
|
||||
|
||||
$(document).on('click', '#SubmitLogin', function(e){
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
//var gif_loader = $('#gif_loader');
|
||||
//gif_loader.show();
|
||||
var jsonData = {
|
||||
type : "POST",
|
||||
cache : false,
|
||||
url : ajax_url,
|
||||
dataType : "json",
|
||||
data : {
|
||||
action : 'privateLogin',
|
||||
ajax : true,
|
||||
email : $.trim($('input[name=email]').val()),
|
||||
passwd : $.trim($('input[name=passwd]').val())
|
||||
},
|
||||
success: function(response) {
|
||||
if (response.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>'+response.html+'</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
//gif_loader.hide();
|
||||
} else if (response.success) {
|
||||
$('#error_holder').html('');
|
||||
//gif_loader.hide();
|
||||
window.location.reload();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
console.log(textStatus + '<br>' + errorThrown);
|
||||
//gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(jsonData);
|
||||
});
|
||||
292
modules/privateshoplite/views/js/private_products.js
Normal file
@@ -0,0 +1,292 @@
|
||||
/*
|
||||
*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
/**
|
||||
* Handles loading of product tabs
|
||||
*/
|
||||
function ProductTabsManager(){
|
||||
var self = this;
|
||||
this.product_tabs = [];
|
||||
this.current_request;
|
||||
this.stack_error = [];
|
||||
this.page_reloading = false;
|
||||
this.has_error_loading_tabs = false;
|
||||
|
||||
/**
|
||||
* Show / Hide languages semaphore
|
||||
*/
|
||||
this.allow_hide_other_languages = true;
|
||||
|
||||
this.setTabs = function(tabs){
|
||||
this.product_tabs = tabs;
|
||||
}
|
||||
|
||||
/**
|
||||
* Schedule execution of onReady() function for each tab and bind events
|
||||
*/
|
||||
this.init = function()
|
||||
{
|
||||
for (var tab_name in this.product_tabs) {
|
||||
if (this.product_tabs[tab_name].onReady !== undefined)
|
||||
this.onLoad(tab_name, this.product_tabs[tab_name].onReady);
|
||||
}
|
||||
|
||||
$('.shopList.chzn-done').on('change', function(){
|
||||
if (self.current_request)
|
||||
{
|
||||
self.page_reloading = true;
|
||||
self.current_request.abort();
|
||||
}
|
||||
});
|
||||
|
||||
$(window).on('beforeunload', function() {
|
||||
self.page_reloading = true;
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute a callback function when a specific tab has finished loading or right now if the tab has already loaded
|
||||
*
|
||||
* @param tab_name name of the tab that is checked for loading
|
||||
* @param callback_function function to call
|
||||
*/
|
||||
this.onLoad = function (tab_name, callback)
|
||||
{
|
||||
var container = $('#product-tab-content-' + tab_name);
|
||||
// Some containers are not loaded depending on the shop configuration
|
||||
if (container.length === 0)
|
||||
return;
|
||||
|
||||
// onReady() is always called after the dom has been created for the tab (similar to $(document).ready())
|
||||
if (container.hasClass('not-loaded'))
|
||||
container.bind('loaded', callback);
|
||||
else
|
||||
callback();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a single tab or recursively get tabs in stack then display them
|
||||
*
|
||||
* @param string tab_name name of the tab
|
||||
* @param boolean selected is the tab selected
|
||||
*/
|
||||
this.display = function (tab_name, selected)
|
||||
{
|
||||
/*In order to prevent mod_evasive DOSPageInterval (Default 1s)*/
|
||||
if (mod_evasive)
|
||||
sleep(1000);
|
||||
|
||||
var tab_selector = $("#product-tab-content-" + tab_name);
|
||||
|
||||
// Is the tab already being loaded?
|
||||
if (tab_selector.hasClass('not-loaded') && !tab_selector.hasClass('loading'))
|
||||
{
|
||||
// Mark the tab as being currently loading
|
||||
tab_selector.addClass('loading');
|
||||
|
||||
if (selected)
|
||||
$('#product-tab-content-wait').show();
|
||||
|
||||
// send $_POST array with the request to be able to retrieve posted data if there was an error while saving product
|
||||
var data;
|
||||
var send_type = 'GET';
|
||||
if (save_error)
|
||||
{
|
||||
send_type = 'POST';
|
||||
data = post_data;
|
||||
// set key_tab so that the ajax call returns the display for the current tab
|
||||
data.key_tab = tab_name;
|
||||
}
|
||||
|
||||
return $.ajax({
|
||||
url : $('#privateshop_'+tab_name).attr("href")+"&ajax=1" + '&rand=' + new Date().getTime(),
|
||||
async : true,
|
||||
cache: false, // cache needs to be set to false or IE will cache the page with outdated product values
|
||||
type: send_type,
|
||||
headers: { "cache-control": "no-cache" },
|
||||
data: data,
|
||||
timeout: 30000,
|
||||
success : function(data)
|
||||
{
|
||||
tab_selector.html(data).find('.dropdown-toggle').dropdown();
|
||||
tab_selector.removeClass('not-loaded');
|
||||
|
||||
if (selected)
|
||||
{
|
||||
$("#privateshop_"+tab_name).addClass('selected');
|
||||
tab_selector.show();
|
||||
}
|
||||
tab_selector.trigger('loaded');
|
||||
},
|
||||
complete : function(data)
|
||||
{
|
||||
tab_selector.removeClass('loading');
|
||||
if (selected)
|
||||
{
|
||||
$('#product-tab-content-wait').hide();
|
||||
tab_selector.trigger('displayed');
|
||||
}
|
||||
},
|
||||
beforeSend : function(data)
|
||||
{
|
||||
// don't display the loading notification bar
|
||||
if (typeof(ajax_running_timeout) !== 'undefined')
|
||||
clearTimeout(ajax_running_timeout);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
var product_tabs = [];
|
||||
product_tabs['Associations'] = new function(){
|
||||
var self = this;
|
||||
this.initAccessoriesAutocomplete = function (){
|
||||
$('#product_autocomplete_input')
|
||||
.autocomplete('ajax_products_list.php', {
|
||||
minChars: 1,
|
||||
autoFill: true,
|
||||
max:20,
|
||||
matchContains: true,
|
||||
mustMatch:false,
|
||||
scroll:false,
|
||||
cacheLength:0,
|
||||
formatItem: function(item) {
|
||||
return item[1]+' - '+item[0];
|
||||
}
|
||||
}).result(self.addAccessory);
|
||||
|
||||
$('#product_autocomplete_input').setOptions({
|
||||
extraParams: {
|
||||
excludeIds : self.getAccessoriesIds()
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
this.getAccessoriesIds = function()
|
||||
{
|
||||
if ($('#inputAccessories').val() === undefined)
|
||||
return id_product;
|
||||
return id_product + ',' + $('#inputAccessories').val().replace(/\-/g,',');
|
||||
}
|
||||
|
||||
this.addAccessory = function(event, data, formatted)
|
||||
{
|
||||
if (data == null)
|
||||
return false;
|
||||
var productId = data[1];
|
||||
var productName = data[0];
|
||||
|
||||
var $divAccessories = $('#divAccessories');
|
||||
var $inputAccessories = $('#inputAccessories');
|
||||
var $nameAccessories = $('#nameAccessories');
|
||||
|
||||
/* delete product from select + add product line to the div, input_name, input_ids elements */
|
||||
$divAccessories.html($divAccessories.html() + '<div class="form-control-static"><button type="button" class="delAccessory btn btn-default" name="' + productId + '"><i class="icon-remove text-danger"></i></button> '+ productName +'</div>');
|
||||
$nameAccessories.val($nameAccessories.val() + productName + '¤');
|
||||
$inputAccessories.val($inputAccessories.val() + productId + '-');
|
||||
$('#product_autocomplete_input').val('');
|
||||
$('#product_autocomplete_input').setOptions({
|
||||
extraParams: {excludeIds : self.getAccessoriesIds()}
|
||||
});
|
||||
};
|
||||
|
||||
this.delAccessory = function(id)
|
||||
{
|
||||
var div = getE('divAccessories');
|
||||
var input = getE('inputAccessories');
|
||||
var name = getE('nameAccessories');
|
||||
|
||||
// Cut hidden fields in array
|
||||
var inputCut = input.value.split('-');
|
||||
var nameCut = name.value.split('¤');
|
||||
|
||||
if (inputCut.length != nameCut.length)
|
||||
return jAlert('Bad size');
|
||||
|
||||
// Reset all hidden fields
|
||||
input.value = '';
|
||||
name.value = '';
|
||||
div.innerHTML = '';
|
||||
for (i in inputCut)
|
||||
{
|
||||
// If empty, error, next
|
||||
if (!inputCut[i] || !nameCut[i])
|
||||
continue ;
|
||||
|
||||
// Add to hidden fields no selected products OR add to select field selected product
|
||||
if (inputCut[i] != id)
|
||||
{
|
||||
input.value += inputCut[i] + '-';
|
||||
name.value += nameCut[i] + '¤';
|
||||
div.innerHTML += '<div class="form-control-static"><button type="button" class="delAccessory btn btn-default" name="' + inputCut[i] +'"><i class="icon-remove text-danger"></i></button> ' + nameCut[i] + '</div>';
|
||||
}
|
||||
else
|
||||
$('#selectAccessories').append('<option selected="selected" value="' + inputCut[i] + '-' + nameCut[i] + '">' + inputCut[i] + ' - ' + nameCut[i] + '</option>');
|
||||
}
|
||||
|
||||
$('#product_autocomplete_input').setOptions({
|
||||
extraParams: {excludeIds : self.getAccessoriesIds()}
|
||||
});
|
||||
};
|
||||
|
||||
this.onReady = function(){
|
||||
self.initAccessoriesAutocomplete();
|
||||
self.getManufacturers();
|
||||
$('#divAccessories').delegate('.delAccessory', 'click', function(){
|
||||
self.delAccessory($(this).attr('name'));
|
||||
});
|
||||
if (display_multishop_checkboxes)
|
||||
ProductMultishop.checkAllAssociations();
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
this.checkAllAssociations = function()
|
||||
{
|
||||
ProductMultishop.checkField($('input[name=\'multishop_check[id_category_default]\']').prop('checked'), 'id_category_default');
|
||||
ProductMultishop.checkField($('input[name=\'multishop_check[id_category_default]\']').prop('checked'), 'associated-categories-tree', 'category_box');
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
var tabs_manager = new ProductTabsManager();
|
||||
tabs_manager.setTabs(product_tabs);
|
||||
|
||||
$(document).ready(function() {
|
||||
// The manager schedules the onReady() methods of each tab to be called when the tab is loaded
|
||||
tabs_manager.init();
|
||||
updateCurrentText();
|
||||
$("#name_" + id_lang_default + ",#link_rewrite_" + id_lang_default)
|
||||
.on("change", function(e) {
|
||||
$(this).trigger("handleSaveButtons");
|
||||
});
|
||||
// bind that custom event
|
||||
$("#name_" + id_lang_default + ",#link_rewrite_" + id_lang_default)
|
||||
.on("handleSaveButtons", function(e) {
|
||||
handleSaveButtons()
|
||||
});
|
||||
|
||||
// Pressing enter in an input field should not submit the form
|
||||
$('#product_form').delegate('input', 'keypress', function(e) {
|
||||
var code = null;
|
||||
code = (e.keyCode ? e.keyCode : e.which);
|
||||
return (code == 13) ? false : true;
|
||||
});
|
||||
|
||||
$('#product_form').submit(function(e) {
|
||||
$('#selectedCarriers option').attr('selected', 'selected');
|
||||
$('#selectAttachment1 option').attr('selected', 'selected');
|
||||
return true;
|
||||
});
|
||||
});
|
||||
33
modules/privateshoplite/views/js/privatefields_admin.js
Normal file
@@ -0,0 +1,33 @@
|
||||
/**
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* @category FMM Modules
|
||||
*/
|
||||
|
||||
$(function(){
|
||||
addPrivateFields(custom_fields, sf)
|
||||
})
|
||||
|
||||
function addPrivateFields(fieldsHtml, symfony) {
|
||||
var chDiv = $('<div id="container-customer"></div>');
|
||||
chDiv.append(fieldsHtml);
|
||||
if (symfony) {
|
||||
$('#main-div').find('.content-div').prepend('<div class="row"><div class="col"><div class="card">'+fieldsHtml+'</div></div></div>');
|
||||
$('#fmm_regfields_wrap').find('.panel-heading').addClass('card-header');
|
||||
$('#fmm_regfields_wrap').find('.panel-heading img').remove();
|
||||
$('#fmm_regfields_wrap').find('.panel-heading').prepend('<i class="material-icons">person</i>');
|
||||
$('#fmm_regfields_wrap').find('.form-horizontal').addClass('card-body');
|
||||
} else {
|
||||
$('.info-customer-left').before(chDiv);
|
||||
$('#container-customer').before(chDiv);
|
||||
}
|
||||
}
|
||||
100
modules/privateshoplite/views/js/protected-page.js
Normal file
@@ -0,0 +1,100 @@
|
||||
/*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*/
|
||||
|
||||
$(document).on('submit', '#private-page', function(e){
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
var jsonData = {
|
||||
type : "POST",
|
||||
cache : false,
|
||||
url : $(this).attr('action'),
|
||||
dataType : "json",
|
||||
data : {
|
||||
action : 'protectedAccess',
|
||||
ajax : true,
|
||||
passwd : $.trim($('input[name=password]').val())
|
||||
},
|
||||
success: function(response) {
|
||||
if (response.success == false && response.errors != '') {
|
||||
var __html = '<div class="alert alert-danger"><ol><li>' + response.errors + '</li></ol></div>';
|
||||
$('#protect-access-error').html(__html);
|
||||
} else if (response.success) {
|
||||
$('#protect-access-error').html('');
|
||||
window.location.reload();
|
||||
//location.href = response.redirect_url;
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
console.log(textStatus + '<br>' + errorThrown);
|
||||
}
|
||||
};
|
||||
$.ajax(jsonData);
|
||||
|
||||
});
|
||||
function ContactForm()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private_page_password_form').hide();
|
||||
$('#private-login').hide();
|
||||
$('#private-contact-form').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
function backToPrevious() {
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-contact-form').hide()
|
||||
$('#private_page_password_form').show();
|
||||
}
|
||||
function sendMessage(el) {
|
||||
|
||||
var gif_loader = $('#gif_loader');
|
||||
gif_loader.show();
|
||||
var form_data = $('#private-contact_form form').serialize();
|
||||
var formData = new FormData($(el).closest('form').get(0));
|
||||
var requestData = {
|
||||
type : 'POST',
|
||||
url : message_url,
|
||||
dataType : 'json',
|
||||
data : formData,
|
||||
contentType : false,
|
||||
cache : false,
|
||||
processData : false,
|
||||
success: function(jsonData) {
|
||||
if (jsonData.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>' + jsonData.html + '</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
gif_loader.hide();
|
||||
} else {
|
||||
console.log(jsonData);
|
||||
$('#error_holder').html('');
|
||||
if (jsonData.redirect === true) {
|
||||
window.location = jsonData.redirect_url;
|
||||
} else {
|
||||
$('#new-private-account').html(jsonData.message);
|
||||
}
|
||||
$('#customer_message_email').val('');
|
||||
$('#customer_message_subject').val('');
|
||||
$('#customer_message_message').val('');
|
||||
$('#privateshoplite_pending_message').html('You message request has been sent');
|
||||
$('#private-back').show();
|
||||
|
||||
gif_loader.hide();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(requestData);
|
||||
|
||||
}
|
||||
172
modules/privateshoplite/views/js/statesManagement.js
Normal file
@@ -0,0 +1,172 @@
|
||||
/*
|
||||
* 2007-2025 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2025 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
//global variables
|
||||
var countriesNeedIDNumber = [];
|
||||
var countriesNeedZipCode = [];
|
||||
var states = [];
|
||||
|
||||
$(document).ready(function(){
|
||||
setCountries();
|
||||
bindStateInputAndUpdate();
|
||||
if (typeof bindUniform !=='undefined')
|
||||
bindUniform();
|
||||
bindZipcode();
|
||||
bindCheckbox();
|
||||
$(document).on('click', '#invoice_address', function(e){
|
||||
bindCheckbox();
|
||||
});
|
||||
});
|
||||
|
||||
function setCountries()
|
||||
{
|
||||
if (typeof countries !== 'undefined' && countries)
|
||||
{
|
||||
var countriesPS = [];
|
||||
for (var i in countries)
|
||||
{
|
||||
var id_country = countries[i]['id_country'];
|
||||
if (typeof countries[i]['states'] !== 'undefined' && parseInt(countries[i]['contains_states']))
|
||||
{
|
||||
countriesPS[id_country] = [];
|
||||
for (var j in countries[i]['states'])
|
||||
countriesPS[parseInt(id_country)].push({'id' : parseInt(countries[i]['states'][j]['id_state']), 'name' : countries[i]['states'][j]['name']});
|
||||
}
|
||||
|
||||
if (typeof countries[i]['need_identification_number'] !== 'undefined' && parseInt(countries[i]['need_identification_number']) > 0)
|
||||
countriesNeedIDNumber.push(parseInt(countries[i]['id_country']));
|
||||
if (typeof countries[i]['need_zip_code'] !== 'undefined' && parseInt(countries[i]['need_zip_code']) > 0)
|
||||
countriesNeedZipCode[parseInt(countries[i]['id_country'])] = countries[i]['zip_code_format'];
|
||||
}
|
||||
}
|
||||
states = countriesPS;
|
||||
}
|
||||
|
||||
function bindCheckbox()
|
||||
{
|
||||
if ($('#invoice_address:checked').length > 0)
|
||||
{
|
||||
$('#opc_invoice_address').slideDown('slow');
|
||||
if ($('#company_invoice').val() == '')
|
||||
$('#vat_number_block_invoice').hide();
|
||||
if (typeof bindUniform !=='undefined')
|
||||
bindUniform();
|
||||
}
|
||||
else
|
||||
$('#opc_invoice_address').slideUp('slow');
|
||||
}
|
||||
|
||||
function bindZipcode()
|
||||
{
|
||||
$(document).on('keyup', 'input[name^=postcode]', function(e)
|
||||
{
|
||||
var char = String.fromCharCode(e.keyCode);
|
||||
if (/[a-zA-Z]/.test(char))
|
||||
$.trim($(this).val($(this).val().toUpperCase()));
|
||||
});
|
||||
}
|
||||
|
||||
function bindStateInputAndUpdate()
|
||||
{
|
||||
$('.id_state, .dni, .postcode').css({'display':'none'});
|
||||
|
||||
if (typeof idSelectedCountry !== 'undefined' && idSelectedCountry)
|
||||
$('#id_country option[value=' + idSelectedCountry + ']').prop('selected', true);
|
||||
|
||||
updateState();
|
||||
updateNeedIDNumber();
|
||||
updateZipCode();
|
||||
|
||||
$(document).on('change', '#id_country', function(e)
|
||||
{
|
||||
updateState();
|
||||
updateNeedIDNumber();
|
||||
updateZipCode();
|
||||
if (typeof validate_field !== 'undefined')
|
||||
validate_field('#postcode');
|
||||
});
|
||||
|
||||
if ($('#id_country_invoice').length !== 0)
|
||||
{
|
||||
$(document).on('change', '#id_country_invoice', function(e)
|
||||
{
|
||||
updateState('invoice');
|
||||
updateNeedIDNumber('invoice');
|
||||
updateZipCode('invoice');
|
||||
if (typeof validate_field !== 'undefined')
|
||||
validate_field('#postcode_invoice');
|
||||
});
|
||||
updateState('invoice');
|
||||
updateNeedIDNumber('invoice');
|
||||
updateZipCode('invoice');
|
||||
}
|
||||
|
||||
if (typeof idSelectedState !== 'undefined' && idSelectedState)
|
||||
$('.id_state option[value=' + idSelectedState + ']').prop('selected', true);
|
||||
if (typeof idSelectedStateInvoice !== 'undefined' && idSelectedStateInvoice)
|
||||
$('.id_state_invoice option[value=' + idSelectedStateInvoice + ']').prop('selected', true);
|
||||
}
|
||||
|
||||
function updateState(suffix)
|
||||
{
|
||||
$('#id_state' + (typeof suffix !== 'undefined' ? '_' + suffix : '')+' option:not(:first-child)').remove();
|
||||
if (typeof countries !== 'undefined')
|
||||
var state_list = states[parseInt($('#id_country' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).val())];
|
||||
if (typeof state_list !== 'undefined')
|
||||
{
|
||||
$(state_list).each(function(key, item){
|
||||
$('#id_state' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).append('<option value="' + parseInt(item.id) + '">' + item.name + '</option>');
|
||||
});
|
||||
|
||||
$('.id_state' + (typeof suffix !== 'undefined' ? '_' + suffix : '') + ':hidden').fadeIn('slow');
|
||||
//$('#id_state, #id_state_invoice').uniform();
|
||||
}
|
||||
else
|
||||
$('.id_state' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).fadeOut('fast');
|
||||
}
|
||||
|
||||
function updateNeedIDNumber(suffix)
|
||||
{
|
||||
//var id_country = parseInt($('#id_country' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).val());
|
||||
//console.log(countriesNeedIDNumber);
|
||||
//if ($.inArray(id_country, countriesNeedIDNumber))
|
||||
//{
|
||||
// $('.dni' + (typeof suffix !== 'undefined' ? '_' + suffix : '') + ':hidden').fadeIn('slow');
|
||||
// //$('#dni').uniform();
|
||||
//}
|
||||
//else
|
||||
// $('.dni' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).fadeOut('fast');
|
||||
}
|
||||
|
||||
function updateZipCode(suffix)
|
||||
{
|
||||
var id_country = parseInt($('#id_country' + (typeof suffix !== 'undefined' ? '_' + suffix : '')).val());
|
||||
if (typeof countriesNeedZipCode[id_country] !== 'undefined')
|
||||
{
|
||||
$('.postcode' + (typeof suffix !== 'undefined' ? '_' + suffix : '') + ':hidden').fadeIn('slow');
|
||||
//$('#postcode').uniform();
|
||||
}
|
||||
else
|
||||
$('.postcode'+(typeof suffix !== 'undefined' ? '_' + suffix : '')).fadeOut('fast');
|
||||
}
|
||||
198
modules/privateshoplite/views/js/validate.js
Normal file
@@ -0,0 +1,198 @@
|
||||
/*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2022 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
var unicode_hack = (function() {
|
||||
/* Regexps to match characters in the BMP according to their Unicode category.
|
||||
Extracted from Unicode specification, version 5.0.0, source:
|
||||
http://unicode.org/versions/Unicode5.0.0/
|
||||
*/
|
||||
var unicodeCategories = {
|
||||
Pi:'[\u00ab\u2018\u201b\u201c\u201f\u2039\u2e02\u2e04\u2e09\u2e0c\u2e1c]',
|
||||
Sk:'[\u005e\u0060\u00a8\u00af\u00b4\u00b8\u02c2-\u02c5\u02d2-\u02df\u02e5-\u02ed\u02ef-\u02ff\u0374\u0375\u0384\u0385\u1fbd\u1fbf-\u1fc1\u1fcd-\u1fcf\u1fdd-\u1fdf\u1fed-\u1fef\u1ffd\u1ffe\u309b\u309c\ua700-\ua716\ua720\ua721\uff3e\uff40\uffe3]',
|
||||
Sm:'[\u002b\u003c-\u003e\u007c\u007e\u00ac\u00b1\u00d7\u00f7\u03f6\u2044\u2052\u207a-\u207c\u208a-\u208c\u2140-\u2144\u214b\u2190-\u2194\u219a\u219b\u21a0\u21a3\u21a6\u21ae\u21ce\u21cf\u21d2\u21d4\u21f4-\u22ff\u2308-\u230b\u2320\u2321\u237c\u239b-\u23b3\u23dc-\u23e1\u25b7\u25c1\u25f8-\u25ff\u266f\u27c0-\u27c4\u27c7-\u27ca\u27d0-\u27e5\u27f0-\u27ff\u2900-\u2982\u2999-\u29d7\u29dc-\u29fb\u29fe-\u2aff\ufb29\ufe62\ufe64-\ufe66\uff0b\uff1c-\uff1e\uff5c\uff5e\uffe2\uffe9-\uffec]',
|
||||
So:'[\u00a6\u00a7\u00a9\u00ae\u00b0\u00b6\u0482\u060e\u060f\u06e9\u06fd\u06fe\u07f6\u09fa\u0b70\u0bf3-\u0bf8\u0bfa\u0cf1\u0cf2\u0f01-\u0f03\u0f13-\u0f17\u0f1a-\u0f1f\u0f34\u0f36\u0f38\u0fbe-\u0fc5\u0fc7-\u0fcc\u0fcf\u1360\u1390-\u1399\u1940\u19e0-\u19ff\u1b61-\u1b6a\u1b74-\u1b7c\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211e-\u2123\u2125\u2127\u2129\u212e\u213a\u213b\u214a\u214c\u214d\u2195-\u2199\u219c-\u219f\u21a1\u21a2\u21a4\u21a5\u21a7-\u21ad\u21af-\u21cd\u21d0\u21d1\u21d3\u21d5-\u21f3\u2300-\u2307\u230c-\u231f\u2322-\u2328\u232b-\u237b\u237d-\u239a\u23b4-\u23db\u23e2-\u23e7\u2400-\u2426\u2440-\u244a\u249c-\u24e9\u2500-\u25b6\u25b8-\u25c0\u25c2-\u25f7\u2600-\u266e\u2670-\u269c\u26a0-\u26b2\u2701-\u2704\u2706-\u2709\u270c-\u2727\u2729-\u274b\u274d\u274f-\u2752\u2756\u2758-\u275e\u2761-\u2767\u2794\u2798-\u27af\u27b1-\u27be\u2800-\u28ff\u2b00-\u2b1a\u2b20-\u2b23\u2ce5-\u2cea\u2e80-\u2e99\u2e9b-\u2ef3\u2f00-\u2fd5\u2ff0-\u2ffb\u3004\u3012\u3013\u3020\u3036\u3037\u303e\u303f\u3190\u3191\u3196-\u319f\u31c0-\u31cf\u3200-\u321e\u322a-\u3243\u3250\u3260-\u327f\u328a-\u32b0\u32c0-\u32fe\u3300-\u33ff\u4dc0-\u4dff\ua490-\ua4c6\ua828-\ua82b\ufdfd\uffe4\uffe8\uffed\uffee\ufffc\ufffd]',
|
||||
Po:'[\u0021-\u0023\u0025-\u0027\u002a\u002c\u002e\u002f\u003a\u003b\u003f\u0040\u005c\u00a1\u00b7\u00bf\u037e\u0387\u055a-\u055f\u0589\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0964\u0965\u0970\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f85\u0fd0\u0fd1\u104a-\u104f\u10fb\u1361-\u1368\u166d\u166e\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u1805\u1807-\u180a\u1944\u1945\u19de\u19df\u1a1e\u1a1f\u1b5a-\u1b60\u2016\u2017\u2020-\u2027\u2030-\u2038\u203b-\u203e\u2041-\u2043\u2047-\u2051\u2053\u2055-\u205e\u2cf9-\u2cfc\u2cfe\u2cff\u2e00\u2e01\u2e06-\u2e08\u2e0b\u2e0e-\u2e16\u3001-\u3003\u303d\u30fb\ua874-\ua877\ufe10-\ufe16\ufe19\ufe30\ufe45\ufe46\ufe49-\ufe4c\ufe50-\ufe52\ufe54-\ufe57\ufe5f-\ufe61\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff07\uff0a\uff0c\uff0e\uff0f\uff1a\uff1b\uff1f\uff20\uff3c\uff61\uff64\uff65]',
|
||||
Mn:'[\u0300-\u036f\u0483-\u0486\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u0615\u064b-\u065e\u0670\u06d6-\u06dc\u06df-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0901\u0902\u093c\u0941-\u0948\u094d\u0951-\u0954\u0962\u0963\u0981\u09bc\u09c1-\u09c4\u09cd\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a70\u0a71\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3f\u0b41-\u0b43\u0b4d\u0b56\u0b82\u0bc0\u0bcd\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0cbc\u0cbf\u0cc6\u0ccc\u0ccd\u0ce2\u0ce3\u0d41-\u0d43\u0d4d\u0dca\u0dd2-\u0dd4\u0dd6\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032\u1036\u1037\u1039\u1058\u1059\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1dc0-\u1dca\u1dfe\u1dff\u20d0-\u20dc\u20e1\u20e5-\u20ef\u302a-\u302f\u3099\u309a\ua806\ua80b\ua825\ua826\ufb1e\ufe00-\ufe0f\ufe20-\ufe23]',
|
||||
Ps:'[\u0028\u005b\u007b\u0f3a\u0f3c\u169b\u201a\u201e\u2045\u207d\u208d\u2329\u2768\u276a\u276c\u276e\u2770\u2772\u2774\u27c5\u27e6\u27e8\u27ea\u2983\u2985\u2987\u2989\u298b\u298d\u298f\u2991\u2993\u2995\u2997\u29d8\u29da\u29fc\u3008\u300a\u300c\u300e\u3010\u3014\u3016\u3018\u301a\u301d\ufd3e\ufe17\ufe35\ufe37\ufe39\ufe3b\ufe3d\ufe3f\ufe41\ufe43\ufe47\ufe59\ufe5b\ufe5d\uff08\uff3b\uff5b\uff5f\uff62]',
|
||||
Cc:'[\u0000-\u001f\u007f-\u009f]',
|
||||
Cf:'[\u00ad\u0600-\u0603\u06dd\u070f\u17b4\u17b5\u200b-\u200f\u202a-\u202e\u2060-\u2063\u206a-\u206f\ufeff\ufff9-\ufffb]',
|
||||
Ll:'[\u0061-\u007a\u00aa\u00b5\u00ba\u00df-\u00f6\u00f8-\u00ff\u0101\u0103\u0105\u0107\u0109\u010b\u010d\u010f\u0111\u0113\u0115\u0117\u0119\u011b\u011d\u011f\u0121\u0123\u0125\u0127\u0129\u012b\u012d\u012f\u0131\u0133\u0135\u0137\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u0149\u014b\u014d\u014f\u0151\u0153\u0155\u0157\u0159\u015b\u015d\u015f\u0161\u0163\u0165\u0167\u0169\u016b\u016d\u016f\u0171\u0173\u0175\u0177\u017a\u017c\u017e-\u0180\u0183\u0185\u0188\u018c\u018d\u0192\u0195\u0199-\u019b\u019e\u01a1\u01a3\u01a5\u01a8\u01aa\u01ab\u01ad\u01b0\u01b4\u01b6\u01b9\u01ba\u01bd-\u01bf\u01c6\u01c9\u01cc\u01ce\u01d0\u01d2\u01d4\u01d6\u01d8\u01da\u01dc\u01dd\u01df\u01e1\u01e3\u01e5\u01e7\u01e9\u01eb\u01ed\u01ef\u01f0\u01f3\u01f5\u01f9\u01fb\u01fd\u01ff\u0201\u0203\u0205\u0207\u0209\u020b\u020d\u020f\u0211\u0213\u0215\u0217\u0219\u021b\u021d\u021f\u0221\u0223\u0225\u0227\u0229\u022b\u022d\u022f\u0231\u0233-\u0239\u023c\u023f\u0240\u0242\u0247\u0249\u024b\u024d\u024f-\u0293\u0295-\u02af\u037b-\u037d\u0390\u03ac-\u03ce\u03d0\u03d1\u03d5-\u03d7\u03d9\u03db\u03dd\u03df\u03e1\u03e3\u03e5\u03e7\u03e9\u03eb\u03ed\u03ef-\u03f3\u03f5\u03f8\u03fb\u03fc\u0430-\u045f\u0461\u0463\u0465\u0467\u0469\u046b\u046d\u046f\u0471\u0473\u0475\u0477\u0479\u047b\u047d\u047f\u0481\u048b\u048d\u048f\u0491\u0493\u0495\u0497\u0499\u049b\u049d\u049f\u04a1\u04a3\u04a5\u04a7\u04a9\u04ab\u04ad\u04af\u04b1\u04b3\u04b5\u04b7\u04b9\u04bb\u04bd\u04bf\u04c2\u04c4\u04c6\u04c8\u04ca\u04cc\u04ce\u04cf\u04d1\u04d3\u04d5\u04d7\u04d9\u04db\u04dd\u04df\u04e1\u04e3\u04e5\u04e7\u04e9\u04eb\u04ed\u04ef\u04f1\u04f3\u04f5\u04f7\u04f9\u04fb\u04fd\u04ff\u0501\u0503\u0505\u0507\u0509\u050b\u050d\u050f\u0511\u0513\u0561-\u0587\u1d00-\u1d2b\u1d62-\u1d77\u1d79-\u1d9a\u1e01\u1e03\u1e05\u1e07\u1e09\u1e0b\u1e0d\u1e0f\u1e11\u1e13\u1e15\u1e17\u1e19\u1e1b\u1e1d\u1e1f\u1e21\u1e23\u1e25\u1e27\u1e29\u1e2b\u1e2d\u1e2f\u1e31\u1e33\u1e35\u1e37\u1e39\u1e3b\u1e3d\u1e3f\u1e41\u1e43\u1e45\u1e47\u1e49\u1e4b\u1e4d\u1e4f\u1e51\u1e53\u1e55\u1e57\u1e59\u1e5b\u1e5d\u1e5f\u1e61\u1e63\u1e65\u1e67\u1e69\u1e6b\u1e6d\u1e6f\u1e71\u1e73\u1e75\u1e77\u1e79\u1e7b\u1e7d\u1e7f\u1e81\u1e83\u1e85\u1e87\u1e89\u1e8b\u1e8d\u1e8f\u1e91\u1e93\u1e95-\u1e9b\u1ea1\u1ea3\u1ea5\u1ea7\u1ea9\u1eab\u1ead\u1eaf\u1eb1\u1eb3\u1eb5\u1eb7\u1eb9\u1ebb\u1ebd\u1ebf\u1ec1\u1ec3\u1ec5\u1ec7\u1ec9\u1ecb\u1ecd\u1ecf\u1ed1\u1ed3\u1ed5\u1ed7\u1ed9\u1edb\u1edd\u1edf\u1ee1\u1ee3\u1ee5\u1ee7\u1ee9\u1eeb\u1eed\u1eef\u1ef1\u1ef3\u1ef5\u1ef7\u1ef9\u1f00-\u1f07\u1f10-\u1f15\u1f20-\u1f27\u1f30-\u1f37\u1f40-\u1f45\u1f50-\u1f57\u1f60-\u1f67\u1f70-\u1f7d\u1f80-\u1f87\u1f90-\u1f97\u1fa0-\u1fa7\u1fb0-\u1fb4\u1fb6\u1fb7\u1fbe\u1fc2-\u1fc4\u1fc6\u1fc7\u1fd0-\u1fd3\u1fd6\u1fd7\u1fe0-\u1fe7\u1ff2-\u1ff4\u1ff6\u1ff7\u2071\u207f\u210a\u210e\u210f\u2113\u212f\u2134\u2139\u213c\u213d\u2146-\u2149\u214e\u2184\u2c30-\u2c5e\u2c61\u2c65\u2c66\u2c68\u2c6a\u2c6c\u2c74\u2c76\u2c77\u2c81\u2c83\u2c85\u2c87\u2c89\u2c8b\u2c8d\u2c8f\u2c91\u2c93\u2c95\u2c97\u2c99\u2c9b\u2c9d\u2c9f\u2ca1\u2ca3\u2ca5\u2ca7\u2ca9\u2cab\u2cad\u2caf\u2cb1\u2cb3\u2cb5\u2cb7\u2cb9\u2cbb\u2cbd\u2cbf\u2cc1\u2cc3\u2cc5\u2cc7\u2cc9\u2ccb\u2ccd\u2ccf\u2cd1\u2cd3\u2cd5\u2cd7\u2cd9\u2cdb\u2cdd\u2cdf\u2ce1\u2ce3\u2ce4\u2d00-\u2d25\ufb00-\ufb06\ufb13-\ufb17\uff41-\uff5a]',
|
||||
Lm:'[\u02b0-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ee\u037a\u0559\u0640\u06e5\u06e6\u07f4\u07f5\u07fa\u0e46\u0ec6\u10fc\u17d7\u1843\u1d2c-\u1d61\u1d78\u1d9b-\u1dbf\u2090-\u2094\u2d6f\u3005\u3031-\u3035\u303b\u309d\u309e\u30fc-\u30fe\ua015\ua717-\ua71a\uff70\uff9e\uff9f]',
|
||||
Lo:'[\u01bb\u01c0-\u01c3\u0294\u05d0-\u05ea\u05f0-\u05f2\u0621-\u063a\u0641-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u076d\u0780-\u07a5\u07b1\u07ca-\u07ea\u0904-\u0939\u093d\u0950\u0958-\u0961\u097b-\u097f\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c33\u0c35-\u0c39\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d28\u0d2a-\u0d39\u0d60\u0d61\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e45\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0edc\u0edd\u0f00\u0f40-\u0f47\u0f49-\u0f6a\u0f88-\u0f8b\u1000-\u1021\u1023-\u1027\u1029\u102a\u1050-\u1055\u10d0-\u10fa\u1100-\u1159\u115f-\u11a2\u11a8-\u11f9\u1200-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u1676\u1681-\u169a\u16a0-\u16ea\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17dc\u1820-\u1842\u1844-\u1877\u1880-\u18a8\u1900-\u191c\u1950-\u196d\u1970-\u1974\u1980-\u19a9\u19c1-\u19c7\u1a00-\u1a16\u1b05-\u1b33\u1b45-\u1b4b\u2135-\u2138\u2d30-\u2d65\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u3006\u303c\u3041-\u3096\u309f\u30a1-\u30fa\u30ff\u3105-\u312c\u3131-\u318e\u31a0-\u31b7\u31f0-\u31ff\u3400\u4db5\u4e00\u9fbb\ua000-\ua014\ua016-\ua48c\ua800\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\uac00\ud7a3\uf900-\ufa2d\ufa30-\ufa6a\ufa70-\ufad9\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff66-\uff6f\uff71-\uff9d\uffa0-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]',
|
||||
Co:'[\ue000\uf8ff]',
|
||||
Nd:'[\u0030-\u0039\u0660-\u0669\u06f0-\u06f9\u07c0-\u07c9\u0966-\u096f\u09e6-\u09ef\u0a66-\u0a6f\u0ae6-\u0aef\u0b66-\u0b6f\u0be6-\u0bef\u0c66-\u0c6f\u0ce6-\u0cef\u0d66-\u0d6f\u0e50-\u0e59\u0ed0-\u0ed9\u0f20-\u0f29\u1040-\u1049\u17e0-\u17e9\u1810-\u1819\u1946-\u194f\u19d0-\u19d9\u1b50-\u1b59\uff10-\uff19]',
|
||||
Lt:'[\u01c5\u01c8\u01cb\u01f2\u1f88-\u1f8f\u1f98-\u1f9f\u1fa8-\u1faf\u1fbc\u1fcc\u1ffc]',
|
||||
Lu:'[\u0041-\u005a\u00c0-\u00d6\u00d8-\u00de\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136\u0139\u013b\u013d\u013f\u0141\u0143\u0145\u0147\u014a\u014c\u014e\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u0179\u017b\u017d\u0181\u0182\u0184\u0186\u0187\u0189-\u018b\u018e-\u0191\u0193\u0194\u0196-\u0198\u019c\u019d\u019f\u01a0\u01a2\u01a4\u01a6\u01a7\u01a9\u01ac\u01ae\u01af\u01b1-\u01b3\u01b5\u01b7\u01b8\u01bc\u01c4\u01c7\u01ca\u01cd\u01cf\u01d1\u01d3\u01d5\u01d7\u01d9\u01db\u01de\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec\u01ee\u01f1\u01f4\u01f6-\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204\u0206\u0208\u020a\u020c\u020e\u0210\u0212\u0214\u0216\u0218\u021a\u021c\u021e\u0220\u0222\u0224\u0226\u0228\u022a\u022c\u022e\u0230\u0232\u023a\u023b\u023d\u023e\u0241\u0243-\u0246\u0248\u024a\u024c\u024e\u0386\u0388-\u038a\u038c\u038e\u038f\u0391-\u03a1\u03a3-\u03ab\u03d2-\u03d4\u03d8\u03da\u03dc\u03de\u03e0\u03e2\u03e4\u03e6\u03e8\u03ea\u03ec\u03ee\u03f4\u03f7\u03f9\u03fa\u03fd-\u042f\u0460\u0462\u0464\u0466\u0468\u046a\u046c\u046e\u0470\u0472\u0474\u0476\u0478\u047a\u047c\u047e\u0480\u048a\u048c\u048e\u0490\u0492\u0494\u0496\u0498\u049a\u049c\u049e\u04a0\u04a2\u04a4\u04a6\u04a8\u04aa\u04ac\u04ae\u04b0\u04b2\u04b4\u04b6\u04b8\u04ba\u04bc\u04be\u04c0\u04c1\u04c3\u04c5\u04c7\u04c9\u04cb\u04cd\u04d0\u04d2\u04d4\u04d6\u04d8\u04da\u04dc\u04de\u04e0\u04e2\u04e4\u04e6\u04e8\u04ea\u04ec\u04ee\u04f0\u04f2\u04f4\u04f6\u04f8\u04fa\u04fc\u04fe\u0500\u0502\u0504\u0506\u0508\u050a\u050c\u050e\u0510\u0512\u0531-\u0556\u10a0-\u10c5\u1e00\u1e02\u1e04\u1e06\u1e08\u1e0a\u1e0c\u1e0e\u1e10\u1e12\u1e14\u1e16\u1e18\u1e1a\u1e1c\u1e1e\u1e20\u1e22\u1e24\u1e26\u1e28\u1e2a\u1e2c\u1e2e\u1e30\u1e32\u1e34\u1e36\u1e38\u1e3a\u1e3c\u1e3e\u1e40\u1e42\u1e44\u1e46\u1e48\u1e4a\u1e4c\u1e4e\u1e50\u1e52\u1e54\u1e56\u1e58\u1e5a\u1e5c\u1e5e\u1e60\u1e62\u1e64\u1e66\u1e68\u1e6a\u1e6c\u1e6e\u1e70\u1e72\u1e74\u1e76\u1e78\u1e7a\u1e7c\u1e7e\u1e80\u1e82\u1e84\u1e86\u1e88\u1e8a\u1e8c\u1e8e\u1e90\u1e92\u1e94\u1ea0\u1ea2\u1ea4\u1ea6\u1ea8\u1eaa\u1eac\u1eae\u1eb0\u1eb2\u1eb4\u1eb6\u1eb8\u1eba\u1ebc\u1ebe\u1ec0\u1ec2\u1ec4\u1ec6\u1ec8\u1eca\u1ecc\u1ece\u1ed0\u1ed2\u1ed4\u1ed6\u1ed8\u1eda\u1edc\u1ede\u1ee0\u1ee2\u1ee4\u1ee6\u1ee8\u1eea\u1eec\u1eee\u1ef0\u1ef2\u1ef4\u1ef6\u1ef8\u1f08-\u1f0f\u1f18-\u1f1d\u1f28-\u1f2f\u1f38-\u1f3f\u1f48-\u1f4d\u1f59\u1f5b\u1f5d\u1f5f\u1f68-\u1f6f\u1fb8-\u1fbb\u1fc8-\u1fcb\u1fd8-\u1fdb\u1fe8-\u1fec\u1ff8-\u1ffb\u2102\u2107\u210b-\u210d\u2110-\u2112\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u2130-\u2133\u213e\u213f\u2145\u2183\u2c00-\u2c2e\u2c60\u2c62-\u2c64\u2c67\u2c69\u2c6b\u2c75\u2c80\u2c82\u2c84\u2c86\u2c88\u2c8a\u2c8c\u2c8e\u2c90\u2c92\u2c94\u2c96\u2c98\u2c9a\u2c9c\u2c9e\u2ca0\u2ca2\u2ca4\u2ca6\u2ca8\u2caa\u2cac\u2cae\u2cb0\u2cb2\u2cb4\u2cb6\u2cb8\u2cba\u2cbc\u2cbe\u2cc0\u2cc2\u2cc4\u2cc6\u2cc8\u2cca\u2ccc\u2cce\u2cd0\u2cd2\u2cd4\u2cd6\u2cd8\u2cda\u2cdc\u2cde\u2ce0\u2ce2\uff21-\uff3a]',
|
||||
Cs:'[\ud800\udb7f\udb80\udbff\udc00\udfff]',
|
||||
Zl:'[\u2028]',
|
||||
Nl:'[\u16ee-\u16f0\u2160-\u2182\u3007\u3021-\u3029\u3038-\u303a]',
|
||||
Zp:'[\u2029]',
|
||||
No:'[\u00b2\u00b3\u00b9\u00bc-\u00be\u09f4-\u09f9\u0bf0-\u0bf2\u0f2a-\u0f33\u1369-\u137c\u17f0-\u17f9\u2070\u2074-\u2079\u2080-\u2089\u2153-\u215f\u2460-\u249b\u24ea-\u24ff\u2776-\u2793\u2cfd\u3192-\u3195\u3220-\u3229\u3251-\u325f\u3280-\u3289\u32b1-\u32bf]',
|
||||
Zs:'[\u0020\u00a0\u1680\u180e\u2000-\u200a\u202f\u205f\u3000]',
|
||||
Sc:'[\u0024\u00a2-\u00a5\u060b\u09f2\u09f3\u0af1\u0bf9\u0e3f\u17db\u20a0-\u20b5\ufdfc\ufe69\uff04\uffe0\uffe1\uffe5\uffe6]',
|
||||
Pc:'[\u005f\u203f\u2040\u2054\ufe33\ufe34\ufe4d-\ufe4f\uff3f]',
|
||||
Pd:'[\u002d\u058a\u1806\u2010-\u2015\u2e17\u301c\u3030\u30a0\ufe31\ufe32\ufe58\ufe63\uff0d]',
|
||||
Pe:'[\u0029\u005d\u007d\u0f3b\u0f3d\u169c\u2046\u207e\u208e\u232a\u2769\u276b\u276d\u276f\u2771\u2773\u2775\u27c6\u27e7\u27e9\u27eb\u2984\u2986\u2988\u298a\u298c\u298e\u2990\u2992\u2994\u2996\u2998\u29d9\u29db\u29fd\u3009\u300b\u300d\u300f\u3011\u3015\u3017\u3019\u301b\u301e\u301f\ufd3f\ufe18\ufe36\ufe38\ufe3a\ufe3c\ufe3e\ufe40\ufe42\ufe44\ufe48\ufe5a\ufe5c\ufe5e\uff09\uff3d\uff5d\uff60\uff63]',
|
||||
Pf:'[\u00bb\u2019\u201d\u203a\u2e03\u2e05\u2e0a\u2e0d\u2e1d]',
|
||||
Me:'[\u0488\u0489\u06de\u20dd-\u20e0\u20e2-\u20e4]',
|
||||
Mc:'[\u0903\u093e-\u0940\u0949-\u094c\u0982\u0983\u09be-\u09c0\u09c7\u09c8\u09cb\u09cc\u09d7\u0a03\u0a3e-\u0a40\u0a83\u0abe-\u0ac0\u0ac9\u0acb\u0acc\u0b02\u0b03\u0b3e\u0b40\u0b47\u0b48\u0b4b\u0b4c\u0b57\u0bbe\u0bbf\u0bc1\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcc\u0bd7\u0c01-\u0c03\u0c41-\u0c44\u0c82\u0c83\u0cbe\u0cc0-\u0cc4\u0cc7\u0cc8\u0cca\u0ccb\u0cd5\u0cd6\u0d02\u0d03\u0d3e-\u0d40\u0d46-\u0d48\u0d4a-\u0d4c\u0d57\u0d82\u0d83\u0dcf-\u0dd1\u0dd8-\u0ddf\u0df2\u0df3\u0f3e\u0f3f\u0f7f\u102c\u1031\u1038\u1056\u1057\u17b6\u17be-\u17c5\u17c7\u17c8\u1923-\u1926\u1929-\u192b\u1930\u1931\u1933-\u1938\u19b0-\u19c0\u19c8\u19c9\u1a19-\u1a1b\u1b04\u1b35\u1b3b\u1b3d-\u1b41\u1b43\u1b44\ua802\ua823\ua824\ua827]'
|
||||
};
|
||||
/* Also supports the general category (only the first letter) */
|
||||
var firstLetters = {};
|
||||
for (var p in unicodeCategories)
|
||||
{
|
||||
if (firstLetters[p[0]])
|
||||
firstLetters[p[0]] = unicodeCategories[p].substring(0,unicodeCategories[p].length-1) + firstLetters[p[0]].substring(1);
|
||||
else
|
||||
firstLetters[p[0]] = unicodeCategories[p];
|
||||
}
|
||||
for (var p in firstLetters)
|
||||
unicodeCategories[p] = firstLetters[p];
|
||||
|
||||
/* Gets a regex written in a dialect that supports unicode categories and
|
||||
translates it to a dialect supported by JavaScript. */
|
||||
return function(regexpString, classes)
|
||||
{
|
||||
var modifiers = "";
|
||||
if ( regexpString instanceof RegExp ) {
|
||||
modifiers = (regexpString.global ? "g" : "") +
|
||||
(regexpString.ignoreCase ? "i" : "") +
|
||||
(regexpString.multiline ? "m" : "");
|
||||
regexpString = regexpString.source;
|
||||
}
|
||||
regexpString = regexpString.replace(/\\p\{(..?)\}/g, function(match,group) {
|
||||
var unicode_categorie = unicodeCategories[group];
|
||||
if (!classes)
|
||||
unicode_category = unicode_categorie.replace(/\[(.*?)\]/g,"$1")
|
||||
return unicode_category || match;
|
||||
});
|
||||
return new RegExp(regexpString,modifiers);
|
||||
};
|
||||
|
||||
})();
|
||||
/*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
function validate_isName(s)
|
||||
{
|
||||
var reg = /^[^0-9!<>,;?=+()@#"°{}_$%:]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isGenericName(s)
|
||||
{
|
||||
var reg = /^[^<>={}]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isAddress(s)
|
||||
{
|
||||
var reg = /^[^!<>?=+@{}_$%]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isPostCode(s, pattern)
|
||||
{
|
||||
if (typeof(pattern) == 'undefined' || pattern.length == 0)
|
||||
pattern = '[a-z 0-9-]+';
|
||||
else
|
||||
{
|
||||
var replacements = {
|
||||
' ': '( |)',
|
||||
'-': '(-|)',
|
||||
'N': '[0-9]',
|
||||
'L': '[a-zA-Z]'
|
||||
};
|
||||
|
||||
for (var new_value in replacements)
|
||||
pattern = pattern.split(new_value).join(replacements[new_value]);
|
||||
}
|
||||
|
||||
var reg = new RegExp('^'+pattern+'$', 'i');
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isCityName(s)
|
||||
{
|
||||
var reg = /^[^!<>;?=+@#"°{}_$%]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isMessage(s)
|
||||
{
|
||||
var reg = /^[^<>{}]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isPhoneNumber(s)
|
||||
{
|
||||
var reg = /^[+0-9. ()-]+$/;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isDniLite(s)
|
||||
{
|
||||
var reg = /^[0-9a-z-.]{1,16}$/i;
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isEmail(s)
|
||||
{
|
||||
var reg = unicode_hack(/^[a-z\p{L}0-9!#$%&'*+\/=?^`{}|~_-]+[.a-z\p{L}0-9!#$%&'*+\/=?^`{}|~_-]*@[a-z\p{L}0-9]+[._a-z\p{L}0-9-]*\.[a-z\p{L}0-9]+$/i, false);
|
||||
return reg.test(s);
|
||||
}
|
||||
|
||||
function validate_isPasswd(s)
|
||||
{
|
||||
return (s.length >= 5 && s.length < 255);
|
||||
}
|
||||
|
||||
$(document).on('focusout', 'input.validate, textarea.validate', function() {
|
||||
if ($(this).hasClass('is_required') || $(this).val().length)
|
||||
{
|
||||
if ($(this).attr('name') == 'postcode' && typeof(countriesNeedZipCode[$('#id_country option:selected').val()]) != 'undefined')
|
||||
var result = window['validate_'+$(this).attr('data-validate')]($(this).val(), countriesNeedZipCode[$('#id_country option:selected').val()]);
|
||||
else
|
||||
var result = window['validate_'+$(this).attr('data-validate')]($(this).val())
|
||||
|
||||
if (result)
|
||||
$(this).parent().removeClass('form-error').addClass('form-ok');
|
||||
else
|
||||
$(this).parent().addClass('form-error').removeClass('form-ok');
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,308 @@
|
||||
{*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FMM Modules
|
||||
* @copyright FME Modules 2021
|
||||
* @license Single domain
|
||||
*}
|
||||
|
||||
{extends file="helpers/form/form.tpl"}
|
||||
|
||||
{block name="input"}
|
||||
{if $input.type == 'cms_pages'}
|
||||
<div id="type_cms" class="panel col-lg-7">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox"
|
||||
name="checkme"
|
||||
id="checkme-cms"
|
||||
class="noborder"
|
||||
onclick="checkDelBoxes(this.form, '{$input.name|escape:'htmlall':'UTF-8'}', this.checked)" />
|
||||
</th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Name' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $input.values as $key => $page}
|
||||
<tr {if $key%2}class="alt_row"{/if}>
|
||||
<td>
|
||||
<input type="checkbox"
|
||||
class="cmsBox"
|
||||
name="cms[]"
|
||||
id="{$page.id_cms|escape:'htmlall':'UTF-8'}"
|
||||
value="{$page.id_cms|escape:'htmlall':'UTF-8'}"
|
||||
{if isset($fields_value.cms) AND in_array($page.id_cms, $fields_value.cms)}checked="checked"{/if} />
|
||||
</td>
|
||||
<td class="fixed-width-xs">
|
||||
{$page.id_cms|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
<label class="control-label" for="{$page.id_cms|escape:'htmlall':'UTF-8'}">
|
||||
{$page.meta_title|escape:'htmlall':'UTF-8'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
{elseif $input.type == 'meta_pages'}
|
||||
<div id="type_meta_pages" class="panel col-lg-7">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<input type="checkbox"
|
||||
name="checkme_meta_pages"
|
||||
id="checkme-meta-pages"
|
||||
class="noborder"
|
||||
onclick="checkDelBoxes(this.form, '{$input.name|escape:'htmlall':'UTF-8'}', this.checked)" />
|
||||
</th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Page' mod='privateshoplite'}</th>
|
||||
<th>{l s='Title' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $input.values as $key => $page}
|
||||
<tr {if $key%2}class="alt_row"{/if}>
|
||||
<td>
|
||||
<input type="checkbox"
|
||||
class="cmsPageBox"
|
||||
name="meta_pages[]"
|
||||
id="meta_page_{$page.id_meta|escape:'htmlall':'UTF-8'}"
|
||||
value="{$page.id_meta|escape:'htmlall':'UTF-8'}"
|
||||
{if isset($fields_value.meta_pages) AND in_array($page.id_meta, $fields_value.meta_pages)}checked="checked"{/if} />
|
||||
</td>
|
||||
<td>
|
||||
{$page.id_meta|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
{$page.page|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
<label class="control-label" for="meta_page_{$page.id_meta|escape:'htmlall':'UTF-8'}">
|
||||
{$page.title|escape:'htmlall':'UTF-8'}
|
||||
</label>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
{elseif $input.type == "product"}
|
||||
<div id="type_product" class="col-lg-9">
|
||||
<input type="hidden" name="inputPrivateProducts" id="inputPrivateProducts" value="{if isset($products) AND $products}{foreach from=$products item=product}{$product.id_product|escape:'htmlall':'UTF-8'}-{/foreach}{/if}" />
|
||||
<input type="hidden" name="namePrivateProducts" id="namePrivateProducts" value="{if isset($products) AND $products}{foreach from=$products item=product}{$product.name|escape:'html':'UTF-8'}¤{/foreach}{/if}" />
|
||||
<div id="ajax_choose_product">
|
||||
<div class="input-group">
|
||||
<input type="text" id="private_product_input" name="private_product_input" />
|
||||
<span class="input-group-addon"><i class="icon-search"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
<p class="help-block">{l s='Search and add product(s) to restriction list.' mod='privateshoplite'}</p>
|
||||
<br>
|
||||
|
||||
<div id="divPrivateProducts">
|
||||
{if isset($products) AND $products}
|
||||
{foreach from=$products item=product}
|
||||
<div class="form-control-static panel">
|
||||
<button type="button" class="btn btn-danger removePrivateProducts" name="{$product.id_product|escape:'htmlall':'UTF-8'}">
|
||||
<i class="icon-trash text-danger"></i>
|
||||
</button>
|
||||
<input type="hidden" name="product[]" value="{$product.id_product|escape:'htmlall':'UTF-8'}">
|
||||
{$product.name|escape:'html':'UTF-8'}{if !empty($product.reference)} {l s='(ref: %s)' sprintf=$product.reference mod='privateshoplite'}{/if}
|
||||
</div>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
{elseif $input.type == 'pwd'}
|
||||
<div class="col-lg-12">
|
||||
<div class="col-lg-8">
|
||||
<input class="form-control" id="code" type="text" name="passwd" value="{if isset($fields_value.passwd) AND $fields_value.passwd}{$fields_value.passwd|escape:'htmlall':'UTF-8'}{/if}">
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<a class="btn btn-info" href="javascript:genPwd(16);">
|
||||
<i class="icon-random"></i>
|
||||
{l s='Generate password' mod='privateshoplite'}
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
{else}
|
||||
{$smarty.block.parent}
|
||||
{/if}
|
||||
{/block}
|
||||
|
||||
{block name="script"}
|
||||
|
||||
var pages = "{if isset($fields_value) AND isset($fields_value.type)}{$fields_value.type|escape:'htmlall':'UTF-8'}{/if}";
|
||||
if (typeof pages === 'undefined' || pages === '') {
|
||||
pages = $('#type option:selected').val();
|
||||
}
|
||||
|
||||
filterPages(pages);
|
||||
|
||||
$(document).on('change', '#type', function(){
|
||||
filterPages($(this).val());
|
||||
});
|
||||
|
||||
$('#divPrivateProducts').delegate('.removePrivateProducts', 'click', function(){
|
||||
self.removePrivateProducts($(this).attr('name'));
|
||||
});
|
||||
|
||||
var options = {
|
||||
minChars: 1,
|
||||
autoFill: true,
|
||||
max:20,
|
||||
matchContains: true,
|
||||
mustMatch:false,
|
||||
scroll:false,
|
||||
cacheLength:0,
|
||||
formatItem: function(item) {
|
||||
var itemStringToReturn = item[item.length - 1];
|
||||
for(var istr = 0; istr < item.length - 1;istr++) {
|
||||
itemStringToReturn += " " + item[istr];
|
||||
}
|
||||
return itemStringToReturn;
|
||||
},
|
||||
|
||||
};
|
||||
|
||||
$('#private_product_input')
|
||||
.autocomplete("{$context_link->getAdminLink('AdminPrivatePages') nofilter}&exclude_packs=0&excludeVirtuals=0",options)
|
||||
.result(addProduct);
|
||||
$('#private_product_input').setOptions({
|
||||
extraParams: {
|
||||
ajax: true,
|
||||
action: 'fetchProducts',
|
||||
excludeIds: getPrivateProduct()
|
||||
}
|
||||
});
|
||||
|
||||
function addProduct(event, data, formatted)
|
||||
{
|
||||
if (data !== null) {
|
||||
var productId = data[1];
|
||||
var productName = data[0];
|
||||
|
||||
var $divPrivateProducts = $('#divPrivateProducts');
|
||||
var $inputPrivateProducts = $('#inputPrivateProducts');
|
||||
var $namePrivateProducts = $('#namePrivateProducts');
|
||||
|
||||
/* delete product from select + add product line to the div, input_name, input_ids elements */
|
||||
$divPrivateProducts.html($divPrivateProducts.html() + '<div class="form-control-static panel"><button type="button" class="removePrivateProducts btn btn-danger" name="' + productId + '"><i class="icon-trash text-danger"></i></button> '+ productName +'</div><input type="hidden" name="product[]" value="' + productId + '">');
|
||||
$namePrivateProducts.val($namePrivateProducts.val() + productName + '¤');
|
||||
($inputPrivateProducts.val() !== 'undefined')?$inputPrivateProducts.val($inputPrivateProducts.val() + productId + '-'):$inputPrivateProducts.val(productId + '-');
|
||||
$('#private_product_input').val('');
|
||||
$('#private_product_input').setOptions({
|
||||
extraParams: {
|
||||
ajax: true,
|
||||
action: 'fetchProducts',
|
||||
excludeIds : getPrivateProduct()
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function getPrivateProduct() {
|
||||
if ($('#inputPrivateProducts').val() !== undefined) {
|
||||
return $('#inputPrivateProducts').val().replace(/\-/g,',');
|
||||
}
|
||||
}
|
||||
|
||||
function removePrivateProducts(id)
|
||||
{
|
||||
var div = getE('divPrivateProducts');
|
||||
var input = getE('inputPrivateProducts');
|
||||
var name = getE('namePrivateProducts');
|
||||
|
||||
// Cut hidden fields in array
|
||||
var inputCut = input.value.split('-');
|
||||
var nameCut = name.value.split('¤');
|
||||
|
||||
if (inputCut.length != nameCut.length) {
|
||||
return jAlert('Bad size');
|
||||
}
|
||||
|
||||
// Reset all hidden fields
|
||||
input.value = '';
|
||||
name.value = '';
|
||||
div.innerHTML = '';
|
||||
for (i in inputCut)
|
||||
{
|
||||
// If empty, error, next
|
||||
if (!inputCut[i] || !nameCut[i]) {
|
||||
continue ;
|
||||
}
|
||||
|
||||
// Add to hidden fields no selected products OR add to select field selected product
|
||||
if (inputCut[i] != id) {
|
||||
input.value += inputCut[i] + '-';
|
||||
name.value += nameCut[i] + '¤';
|
||||
div.innerHTML += '<div class="form-control-static panel"><button type="button" class="removePrivateProducts btn btn-danger" name="' + inputCut[i] +'"><i class="icon-trash text-danger"></i></button> ' + nameCut[i] + '</div><input type="hidden" name="product[]" value="' + inputCut[i] +'">';
|
||||
} else {
|
||||
$('#selectRestrictedProducts').append('<option selected="selected" value="' + inputCut[i] + '-' + nameCut[i] + '">' + inputCut[i] + ' - ' + nameCut[i] + '</option>');
|
||||
}
|
||||
}
|
||||
|
||||
$('#private_product_input').setOptions({
|
||||
extraParams: {
|
||||
ajax: true,
|
||||
action: 'fetchProducts',
|
||||
excludeIds : getPrivateProduct()
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
function filterPages(pages) {
|
||||
var filtered_types = filter_types(pages);
|
||||
if (filtered_types.length) {
|
||||
$('#type_' + pages).closest('.form-group').show();
|
||||
for (var i = 0; i < filtered_types.length; i++) {
|
||||
$('#type_' + filtered_types[i]).closest('.form-group').hide();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function filter_types(type) {
|
||||
var pre_types = ["product", "category", "cms", "meta_pages"];
|
||||
if (typeof type !== 'undefined') {
|
||||
var index = pre_types.indexOf(type);
|
||||
if (index > -1) {
|
||||
pre_types.splice(index, 1);
|
||||
}
|
||||
}
|
||||
return pre_types;
|
||||
}
|
||||
|
||||
/* Code generator for Affiliation and vouchers */
|
||||
function genPwd(size) {
|
||||
getE('code').value = '';
|
||||
/* There are no O/0 in the codes in order to avoid confusion */
|
||||
var chars = "0123456789ABCDEFGHIJKLMNPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$%^&*()_=+-";
|
||||
for (var i = 1; i <= size; ++i)
|
||||
getE('code').value += chars.charAt(Math.floor(Math.random() * chars.length));
|
||||
}
|
||||
|
||||
function getE(name) {
|
||||
if (document.getElementById)
|
||||
var elem = document.getElementById(name);
|
||||
else if (document.all)
|
||||
var elem = document.all[name];
|
||||
else if (document.layers)
|
||||
var elem = document.layers[name];
|
||||
return elem;
|
||||
}
|
||||
{/block}
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2018 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2018 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2018 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2018 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
@@ -0,0 +1,34 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2018 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2018 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
|
||||
header('Location: ../');
|
||||
exit;
|
||||
412
modules/privateshoplite/views/templates/admin/access_control.tpl
Normal file
@@ -0,0 +1,412 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
<script type="text/javascript" src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/js/jquery.autocomplete.js"></script>
|
||||
|
||||
<script type="text/javascript">
|
||||
var img = '';
|
||||
{if $version < 1.6}
|
||||
img = '<img src="../img/admin/delete.gif" />';
|
||||
{/if}
|
||||
|
||||
{literal}
|
||||
var version = "{/literal}{$version|escape:'htmlall':'UTF-8'}{literal}";
|
||||
var search_link = htmlEncode("{/literal}{$search_link|escape:'htmlall':'UTF-8'}{literal}");
|
||||
$(document).ready(function()
|
||||
{
|
||||
var p_sh = document.getElementsByName('PL_PRIVATIZE_SHOP');
|
||||
for(var i=0; i < p_sh.length; i++)
|
||||
{
|
||||
if (p_sh[i].value == 'whole-shop' && p_sh[i].checked) {
|
||||
hide_all();
|
||||
}
|
||||
else if (p_sh[i].value == 'selected-parts' && p_sh[i].checked) {
|
||||
|
||||
show_all();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
var link = "{/literal}{$link->getPageLink('search')|escape:'htmlall':'UTF-8'}{literal}";
|
||||
var lang = jQuery('#lang_spy').val();
|
||||
$("#product_autocomplete_input")
|
||||
.autocomplete(search_link, {
|
||||
minChars: 3,
|
||||
max: 10,
|
||||
width: 500,
|
||||
selectFirst: false,
|
||||
scroll: false,
|
||||
dataType: "json",
|
||||
formatItem: function(data, i, max, value, term) {
|
||||
return value;
|
||||
},
|
||||
parse: function(data)
|
||||
{
|
||||
var mytab = new Array();
|
||||
for (var i = 0; i < data.length; i++)
|
||||
mytab[mytab.length] = { data: data[i], value: data[i].id_product + ' - ' + data[i].pname };
|
||||
return mytab;
|
||||
},
|
||||
extraParams: {
|
||||
ajaxSearch: 1,
|
||||
id_lang: lang
|
||||
}
|
||||
}
|
||||
)
|
||||
.result(function(event, data, formatted)
|
||||
{
|
||||
var $divAccessories = $('#addProducts');
|
||||
|
||||
if (data && data.id_product && data.pname)
|
||||
{
|
||||
var exclude = [];
|
||||
var selected = $('.private_products');
|
||||
for(var i=0; i < selected.length; i++)
|
||||
exclude.push(selected[i].value);
|
||||
var ps_div = '';
|
||||
|
||||
if($.inArray(data.id_product, exclude) == -1)
|
||||
{
|
||||
ps_div = '<div id="selected_product_' + data.id_product + '" class="form-control-static margin-form"><input type="hidden" name="private_products[]" value="' + data.id_product + '" class="private_products"/><button type="button" class="btn btn-default remove-product" name="' + data.id_product + '" onclick="deleteProduct('+ data.id_product +')">'+ img +'<i class="icon-remove text-danger"></i></button> '+ data.pname +'</div>';
|
||||
|
||||
|
||||
$divAccessories.show().html($divAccessories.html() + ps_div);
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
});
|
||||
|
||||
function addRemoteAddr()
|
||||
{
|
||||
var length = $('input[name=ACCESS_GRANTED_IP]').attr('value').length;
|
||||
if (length > 0)
|
||||
$('input[name=ACCESS_GRANTED_IP]').attr('value',$('input[name=ACCESS_GRANTED_IP]').attr('value') +",{/literal}{$cur_ip|escape:'htmlall':'UTF-8'}{literal}");
|
||||
else
|
||||
$('input[name=ACCESS_GRANTED_IP]').attr("value","{/literal}{$cur_ip|escape:'htmlall':'UTF-8'}{literal}");
|
||||
}
|
||||
|
||||
function deleteProduct(id)
|
||||
{
|
||||
$("#selected_product_"+id).remove();
|
||||
}
|
||||
|
||||
function hide_all()
|
||||
{
|
||||
$('#private_shop_selected_section').hide();
|
||||
$('#product_autocomplete_input').attr('disabled','disabled');
|
||||
$('#check-all-associated-categories-tree').attr('disabled','disabled');
|
||||
$('#uncheck-all-associated-categories-tree').attr('disabled','disabled');
|
||||
$('#checkme').attr('disabled','disabled');
|
||||
$('#search_cat').attr('disabled','disabled');
|
||||
$('#associated-categories-tree-categories-search').attr('disabled','disabled');
|
||||
$('.remove-product').attr('disabled','disabled')
|
||||
$('.cms_pages').attr('disabled','disabled');
|
||||
var cat = document.getElementsByName('categoryBox[]');
|
||||
for(var i=0; i < cat.length; i++)
|
||||
{
|
||||
cat[i].disabled = true;
|
||||
}
|
||||
}
|
||||
|
||||
function show_all()
|
||||
{
|
||||
$('#private_shop_selected_section').show();
|
||||
$('#product_autocomplete_input').removeAttr('disabled');
|
||||
$('#check-all-associated-categories-tree').removeAttr('disabled');
|
||||
$('#uncheck-all-associated-categories-tree').removeAttr('disabled');
|
||||
$('#checkme').removeAttr('disabled');
|
||||
$('#search_cat').removeAttr('disabled');
|
||||
$('#associated-categories-tree-categories-search').removeAttr('disabled');
|
||||
$('.remove-product').removeAttr('disabled');
|
||||
$('.cms_pages').removeAttr('disabled');
|
||||
var cat = document.getElementsByName('categoryBox[]');
|
||||
for(var i=0; i < cat.length; i++)
|
||||
{
|
||||
cat[i].disabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function htmlEncode(input)
|
||||
{
|
||||
return String(input)
|
||||
.replace(/&/g, '&');
|
||||
}
|
||||
</script>
|
||||
{/literal}
|
||||
|
||||
<!-- Privatize selection -->
|
||||
<div class="col-lg-12 form-group margin-form">
|
||||
<label class="control-label col-lg-3">
|
||||
<span data-html="true" data-original-title="{l s='Restrict the access of whole shop or restrict specific parts of the shop(categories,products,pages etc).' mod='privateshoplite'}" class="label-tooltip" data-toggle="tooltip" title="">{l s='Privatize' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="col-lg-2 margin-form frame_styled{if isset($field_values) AND isset($field_values.PL_PRIVATIZE_SHOP) AND $field_values.PL_PRIVATIZE_SHOP == 'whole-shop'} active_frame{/if}">
|
||||
<input type="radio" name="PL_PRIVATIZE_SHOP" id="P_PRIVATIZE_SHOP_shop" value="whole-shop" onclick="hide_all()" {if isset($field_values) AND isset($field_values.PL_PRIVATIZE_SHOP) AND $field_values.PL_PRIVATIZE_SHOP == 'whole-shop'}checked="checked"{/if}/>
|
||||
<label class="t" for="PL_PRIVATIZE_SHOP_shop">{l s='Whole Shop' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon ws_ico"></i>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 margin-form frame_styled{if isset($field_values) AND isset($field_values.PL_PRIVATIZE_SHOP) AND $field_values.PL_PRIVATIZE_SHOP == 'selected-parts'} active_frame{/if}">
|
||||
<input type="radio" name="PL_PRIVATIZE_SHOP" id="PL_PRIVATIZE_SHOP_selected" value="selected-parts" onclick="show_all()" {if isset($field_values) AND isset($field_values.PL_PRIVATIZE_SHOP) AND $field_values.PL_PRIVATIZE_SHOP == 'selected-parts'}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATIZE_SHOP_selected">{l s='Only Selected' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon os_ico"></i>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id='private_shop_selected_section'>
|
||||
<div class="col-lg-12 form-group margin-form selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Product Selection?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRODUCT_SELECTION_ENABLED_DISABLED" id="PRODUCT_SELECTION_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.product_selection_enabled_disabled) AND $field_values.product_selection_enabled_disabled == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRODUCT_SELECTION_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRODUCT_SELECTION_ENABLED_DISABLED" id="PRODUCT_SELECTION_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.product_selection_enabled_disabled) AND $field_values.product_selection_enabled_disabled == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRODUCT_SELECTION_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want want to enable product selection?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- restrict products -->
|
||||
<div class="form-group margin-form" id="product_selection">
|
||||
<label class="control-label col-lg-3" for="product_autocomplete_input">
|
||||
<span class="label-tooltip" data-toggle="tooltip" title="{l s='Select products to make them private.' mod='privateshoplite'}">{l s='Private Products' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="col-lg-7">
|
||||
<div id="ajax_choose_product">
|
||||
<div class="input-group">
|
||||
<input id="product_autocomplete_input" name="" type="text" class="text ac_input" value=""/>
|
||||
<input id="lang_spy" type="hidden" value="1" />
|
||||
<span class="input-group-addon"><i class="icon-search"></i></span>
|
||||
</div>
|
||||
<p class="preference_description help-block margin-form">({l s='Start by typing the first letters of the product\'s name, then select the product from the drop-down list.' mod='privateshoplite'})</p>
|
||||
</div>
|
||||
<!-- <table id="addProducts" style="display:block;">
|
||||
</table> -->
|
||||
<div id="addProducts" style="{if isset($products)}display:block;{else}display:none;{/if}">
|
||||
{if isset($products) AND $products}
|
||||
{foreach $products as $pid}
|
||||
<div id="selected_product_{$pid|escape:'htmlall':'UTF-8'}" class="form-control-static margin-form">
|
||||
<input type="hidden" name="private_products[]" value="{$pid|escape:'htmlall':'UTF-8'}" class="private_products"/>
|
||||
<button type="button" class="btn btn-default remove-product" name="{$pid|escape:'htmlall':'UTF-8'}" onclick="deleteProduct({$pid|escape:'htmlall':'UTF-8'})">
|
||||
<i class="icon-remove text-danger"></i>
|
||||
{if $version < 1.6}
|
||||
<img src="../img/admin/delete.gif" />
|
||||
{/if}
|
||||
</button> {Product::getProductName({$pid|escape:'htmlall':'UTF-8'})|escape:'htmlall':'UTF-8'}
|
||||
</div>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div><br/>
|
||||
<div class="col-lg-12 form-group margin-form selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Allow Category Selection?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="CATEGORY_SELECTION_ENABLED_DISABLED" id="CATEGORY_SELECTION_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.category_selection_enabled_disabled) AND $field_values.category_selection_enabled_disabled == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="CATEGORY_SELECTION_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="CATEGORY_SELECTION_ENABLED_DISABLED" id="CATEGORY_SELECTION_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.category_selection_enabled_disabled) AND $field_values.category_selection_enabled_disabled == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="CATEGORY_SELECTION_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to enable category selection?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- restrict categories -->
|
||||
<div class="col-lg-12 form-group margin-form" id= "categories_selection">
|
||||
<label class="form-group control-label col-lg-3">
|
||||
<span class="label-tooltip" data-toggle="tooltip" title="{l s='Select categories to make them private.' mod='privateshoplite'}">{l s='Private Category' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
{$categories}{*html code, cannot be escaped*}
|
||||
</div>
|
||||
</div>
|
||||
</div><br><br/>
|
||||
<div class="clearfix"></div><br/>
|
||||
{* supplier *}
|
||||
<div class="col-lg-12 form-group margin-form selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Supplier Selection?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="SUPPLIER_SELECTION_ENABLED_DISABLED" id="SUPPLIER_SELECTION_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.supplier_selection_enabled_disabled) AND $field_values.supplier_selection_enabled_disabled == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="SUPPLIER_SELECTION_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="SUPPLIER_SELECTION_ENABLED_DISABLED" id="SUPPLIER_SELECTION_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.supplier_selection_enabled_disabled) AND $field_values.supplier_selection_enabled_disabled == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="SUPPLIER_SELECTION_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to enable supplier selection?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 form-group margin-form selected_part" id="supplier_selection">
|
||||
<label class="control-label col-lg-3">
|
||||
<span data-html="true" data-original-title="{l s='Select Suppliers to be privateshop.' mod='privateshoplite'}" class="label-tooltip" data-toggle="tooltip" title="">{l s='Select Suppliers' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="col-lg-9" id="supplier_selection">
|
||||
<table cellspacing="0" cellpadding="0" class="table std table-bordered" style="overflow-y: auto; width: 400px; height:auto;{if $version < 1.6}width:300px;{/if}">
|
||||
<tr>
|
||||
<th> <input type="checkbox" name="checkme" id="checkme" class="noborder" onclick="checkDelBoxes(this.form, 'suppliers[]', this.checked)"/>
|
||||
</th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Supplier' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
<tr><td colspan="3" style="border-bottom:1px solid #e1e1e1;"></td></tr>
|
||||
{foreach from=$suppliers item=supplier}
|
||||
<tr>
|
||||
<td>
|
||||
<input type="checkbox" name="suppliers[]" value="{$supplier.id_supplier|escape:'htmlall':'UTF-8'}" {if isset($selected_suppliers) && in_array($supplier.id_supplier, $selected_suppliers)}checked="checked"{/if}/>
|
||||
</td>
|
||||
<td>
|
||||
{$supplier.id_supplier|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
<span for="{$supplier.id_supplier|escape:'htmlall':'UTF-8'}" class="checkbox">
|
||||
{$supplier.name|escape:'htmlall':'UTF-8'}
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{* herehrgeh *}
|
||||
|
||||
{* manufacturer *}
|
||||
<div class="col-lg-12 form-group margin-form selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Manufacturer Selection?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="MANUFACTURER_SELECTION_ENABLED_DISABLED" id="MANUFACTURER_SELECTION_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.manufacturer_selection_enabled_disabled) AND $field_values.manufacturer_selection_enabled_disabled == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="MANUFACTURER_SELECTION_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="MANUFACTURER_SELECTION_ENABLED_DISABLED" id="MANUFACTURER_SELECTION_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.manufacturer_selection_enabled_disabled) AND $field_values.manufacturer_selection_enabled_disabled == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="MANUFACTURER_SELECTION_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want want to enable manufacturer selection?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-12 form-group margin-form selected_part" id="manufacturer_selection">
|
||||
<label class="control-label col-lg-3">
|
||||
<span data-html="true" data-original-title="{l s='Select Manufacturers to be privateshop.' mod='privateshoplite'}" class="label-tooltip" data-toggle="tooltip" title="">{l s='Select Manufacturers' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="col-lg-9" id="manufacturer_selection">
|
||||
<table cellspacing="0" cellpadding="0" class="table std table-bordered" style="overflow-y: auto; width: 400px; height:auto;{if $version < 1.6}width:300px;{/if}">
|
||||
<tr>
|
||||
<th> <input type="checkbox" name="checkme" id="checkme" class="noborder" onclick="checkDelBoxes(this.form, 'manufacturers[]', this.checked)"/>
|
||||
</th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Supplier' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
<tr><td colspan="3" style="border-bottom:1px solid #e1e1e1;"></td></tr>
|
||||
{foreach from=$manufacturers item=manufacturer}
|
||||
<tr>
|
||||
<td>
|
||||
<input type="checkbox" name="manufacturers[]" value="{$manufacturer.id_manufacturer|escape:'htmlall':'UTF-8'}" {if isset($selected_manufacturers) && in_array($manufacturer.id_manufacturer, $selected_manufacturers)}checked="checked"{/if}/>
|
||||
</td>
|
||||
<td>
|
||||
{$manufacturer.id_manufacturer|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
<span for="{$manufacturer.id_manufacturer|escape:'htmlall':'UTF-8'}" class="checkbox">
|
||||
{$manufacturer.name|escape:'htmlall':'UTF-8'}
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{* manufacturer end *}
|
||||
<!-- Private CMS Pages -->
|
||||
<div class="col-lg-12 form-group margin-form selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable CMS Selection?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="CMS_SELECTION_ENABLED_DISABLED" id="CMS_SELECTION_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.cms_selection_enabled_disabled) AND $field_values.cms_selection_enabled_disabled == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="CMS_SELECTION_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="CMS_SELECTION_ENABLED_DISABLED" id="CMS_SELECTION_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.cms_selection_enabled_disabled) AND $field_values.cms_selection_enabled_disabled == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="CMS_SELECTION_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to enable cms selection?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group margin-form selected_part" id="cms_selection" >
|
||||
<label class="control-label col-lg-3" for="product_autocomplete_input">
|
||||
<span class="label-tooltip" data-toggle="tooltip" title="{l s='Select page(s) to make them private.' mod='privateshoplite'}">{l s='Private CMS Pages' mod='privateshoplite'}</span>
|
||||
</label>
|
||||
<div class="col-lg-9">
|
||||
<div id="productArrayTable">
|
||||
<table cellspacing="0" cellpadding="0" class="table std table-bordered" style="overflow-y: auto;{if $version < 1.6}width:500px;{/if}">
|
||||
<tr>
|
||||
<th> <input type="checkbox" name="checkme" id="checkme" class="noborder" onclick="checkDelBoxes(this.form, 'cms_pages[]', this.checked)"/>
|
||||
</th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Page Name' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
<tr><td colspan="3" style="border-bottom:1px solid #e1e1e1;"></td></tr>
|
||||
{foreach from=$cms_pages item=page}
|
||||
<tr>
|
||||
<td>
|
||||
<input type="checkbox" class="cms_pages" name="cms_pages[]" id="{$page.id_cms|escape:'htmlall':'UTF-8'}" value="{$page.id_cms|escape:'htmlall':'UTF-8'}" {if isset($pages) AND $pages AND in_array($page.id_cms, $pages)}checked="checked"{/if}/>
|
||||
</td>
|
||||
<td>
|
||||
{$page.id_cms|escape:'htmlall':'UTF-8'}
|
||||
</td>
|
||||
<td>
|
||||
<span for="{$page.id_cms|escape:'htmlall':'UTF-8'}" class="t">
|
||||
{$page.meta_title|escape:'htmlall':'UTF-8'}
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
<!-- restricted signup -->
|
||||
<div class="col-lg-12 form-group margin-form">
|
||||
<label class="form-group control-label col-lg-3">{l s='Allow Google to crawl?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_RESTRICT_GOOGLE" id="PRIVATE_RESTRICT_GOOGLE_on" value="1" {if isset($field_values) AND isset($field_values.active_google) AND $field_values.active_google == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_RESTRICT_GOOGLE_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_RESTRICT_GOOGLE" id="PRIVATE_RESTRICT_GOOGLE_off" value="0" {if isset($field_values) AND isset($field_values.active_google) AND $field_values.active_google == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_RESTRICT_GOOGLE_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want Google searchbot to access the webstore for SEO?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
178
modules/privateshoplite/views/templates/admin/customers.tpl
Normal file
@@ -0,0 +1,178 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
<div class="bootstrap">
|
||||
<div class="alert alert-warning">
|
||||
<button type="button" class="close" data-dismiss="alert">×</button>
|
||||
<ul class="list-unstyled">
|
||||
<li>{l s='Please note that the email notification will be only sent to user if you activate the customer account from below Activate button.' mod='privateshoplite'}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel col-lg-12">
|
||||
<div class="panel-heading">
|
||||
<i class="icon-search"></i> {l s='Filter' mod='privateshoplite'}
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-lg-12 form-group">
|
||||
<div class="col-lg-2">
|
||||
<label class="col-lg-5 control-label">{l s='Show:' mod='privateshoplite'}</label>
|
||||
<select class="filter col-lg-7" name="n">
|
||||
<option value="10"{if $search_result.n == 0 || $search_result.n <= 10} selected="selected"{/if}>10</option>
|
||||
<option value="25"{if $search_result.n == 25} selected="selected"{/if}>25</option>
|
||||
<option value="50"{if $search_result.n == 50} selected="selected"{/if}>50</option>
|
||||
<option value="100"{if $search_result.n == 100} selected="selected"{/if}>100</option>
|
||||
<option value="300"{if $search_result.n == 300} selected="selected"{/if}>300</option>
|
||||
<option value="500"{if $search_result.n == 500} selected="selected"{/if}>500</option>
|
||||
<option value="1000"{if $search_result.n == 1000} selected="selected"{/if}>1000</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<label class="col-lg-4 control-label">{l s='Position:' mod='privateshoplite'}</label>
|
||||
<select class="filter col-lg-8" name="filter_select_pos">
|
||||
<option value="0"{if $search_result.pos == 0} selected="selected"{/if}>{l s='By ID Asc' mod='privateshoplite'}</option>
|
||||
<option value="1"{if $search_result.pos > 0} selected="selected"{/if}>{l s='By ID Desc' mod='privateshoplite'}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-lg-4">
|
||||
<label class="col-lg-4 control-label">{l s='Active:' mod='privateshoplite'}</label>
|
||||
<select class="filter col-lg-8" name="filter_select_state">
|
||||
<option value="0"{if $search_result.state == 0} selected="selected"{/if}>{l s='--' mod='privateshoplite'}</option>
|
||||
<option value="1"{if $search_result.state == 1} selected="selected"{/if}>{l s='Yes' mod='privateshoplite'}</option>
|
||||
<option value="2"{if $search_result.state == 2} selected="selected"{/if}>{l s='No' mod='privateshoplite'}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-lg-2 pull-right">
|
||||
<button type="submit" name="search" class="btn btn-default pull-right"><i class="icon-search"></i> {l s='Search' mod='privateshoplite'}</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 form-group" style=" margin-bottom: 5px;">
|
||||
<div class="col-lg-10">
|
||||
<label class="col-lg-4 control-label">{l s='By Name:' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-8">
|
||||
<input type="text" name="search_by_name" value="{if isset($search_result.name) && !empty($search_result.name)}{$search_result.name|escape:'htmlall':'UTF-8'}{/if}" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-2 pull-right">
|
||||
<button type="submit" name="searchReset" class="btn btn-warning pull-right"><i class="icon-eraser"></i> {l s='Reset' mod='privateshoplite'}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="table-responsive">
|
||||
<table class="table table-filter-templates" style="width:100%;">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="center"><span class="title_box"><strong>{l s='ID' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box"><strong>{l s='Title' mod='privateshoplite'}</strong></span></th>
|
||||
<th><span class="title_box"><strong>{l s='Name' mod='privateshoplite'}</strong></span></th>
|
||||
<th><span class="title_box"><strong>{l s='Email' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box"><strong>{l s='Status' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box"><strong>{l s='Newsletter' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box"><strong>{l s='Signup Date' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box"><strong>{l s='Last Visit' mod='privateshoplite'}</strong></span></th>
|
||||
<th class="center"><span class="title_box text-right"><strong>{l s='Action' mod='privateshoplite'}</strong></span></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{if isset($customers) AND $customers}
|
||||
{foreach from=$customers item=customer}
|
||||
<tr>
|
||||
<td class="center" style="padding:10px;width:50px;">{$customer.id_customer|escape:'htmlall':'UTF-8'}</td>
|
||||
<td class="center" style="padding:10px;width:50px;">{$customer.title|escape:'htmlall':'UTF-8'}</td>
|
||||
<td {if $version >= 1.6}style="width:100%"{/if}>{$customer.customer|escape:'htmlall':'UTF-8'}</td>
|
||||
<td>{$customer.email|escape:'htmlall':'UTF-8'}</td>
|
||||
<td class="center">
|
||||
{if $customer.active == 1}
|
||||
<label class="t list-action-enable action-enabled" for="active_on">
|
||||
<i class="icon-check"></i>
|
||||
{if $version < 1.6}
|
||||
<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />
|
||||
{/if}
|
||||
</label>
|
||||
{else}
|
||||
<label class="t list-action-enable action-disabled" for="active_off">
|
||||
<i class="icon-remove"></i>
|
||||
{if $version < 1.6}
|
||||
<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />
|
||||
{/if}
|
||||
</label>
|
||||
{/if}
|
||||
</td>
|
||||
<td class="center">
|
||||
{if $customer.newsletter == 1}
|
||||
<label class="t list-action-enable action-enabled" for="active_on">
|
||||
<i class="icon-check"></i>
|
||||
{if $version < 1.6}
|
||||
<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />
|
||||
{/if}
|
||||
</label>
|
||||
{else}
|
||||
<label class="t list-action-enable action-disabled" for="active_off">
|
||||
<i class="icon-remove"></i>
|
||||
{if $version < 1.6}
|
||||
<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />
|
||||
{/if}
|
||||
</label>
|
||||
{/if}
|
||||
</td>
|
||||
<td class="center">{$customer.date_add|escape:'htmlall':'UTF-8'}</td>
|
||||
<td class="center">{$customer.connect|escape:'htmlall':'UTF-8'}</td>
|
||||
<td class="text-right">
|
||||
<div class="btn-group-action">
|
||||
<div class="btn-group pull-right">
|
||||
{if $customer.active <= 0}
|
||||
<a onclick="document.location='{$activate_index|escape:'htmlall':'UTF-8'}&id_customer={$customer.id_customer|escape:'htmlall':'UTF-8'}'" class="btn btn-default" title="{l s='Activate' mod='privateshoplite'}" href="javascript:void(0);">
|
||||
{if $version >= 1.6}
|
||||
<i class="icon-search-plus"></i> {l s='Activate' mod='privateshoplite'}
|
||||
{else}
|
||||
<img src="../img/admin/details.gif"/>
|
||||
{/if}
|
||||
</a>
|
||||
{else}
|
||||
<a href="{$link->getAdminLink('AdminCustomers', true,[], ['id_customer' => $customer.id_customer|escape:'htmlall':'UTF-8', 'viewcustomer' => 1])}"
|
||||
class="edit btn btn-default"
|
||||
title="{l s='View' mod='privateshoplite'}">
|
||||
{if $version >= 1.6}
|
||||
<i class="icon-search-plus"></i> {l s='View' mod='privateshoplite'}
|
||||
{else}
|
||||
<img src="../img/admin/details.gif"/>
|
||||
{/if}
|
||||
</a>
|
||||
{/if}
|
||||
{if $version >= 1.6}
|
||||
<button data-toggle="dropdown" class="btn btn-default dropdown-toggle">
|
||||
<i class="icon-caret-down"></i>
|
||||
</button>
|
||||
{/if}
|
||||
<ul class="dropdown-menu">
|
||||
<li>
|
||||
<a onclick="document.location='{$cIndex|escape:'htmlall':'UTF-8'}&id_customer={$customer.id_customer|escape:'htmlall':'UTF-8'}&deletecustomer&token={$ctoken|escape:'htmlall':'UTF-8'}'" class="delete" title="{l s='Delete' mod='privateshoplite'}" href="javascript:void(0);">
|
||||
{if $version >= 1.6}
|
||||
<i class="icon-trash"></i> {l s='Delete' mod='privateshoplite'}
|
||||
{else}
|
||||
<img src="../img/admin/delete.gif"/>
|
||||
{/if}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
{/if}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
185
modules/privateshoplite/views/templates/admin/form.tpl
Normal file
@@ -0,0 +1,185 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<script type="text/javascript" src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}js/jquery/plugins/jquery.colorpicker.js"></script>
|
||||
<script type="text/javascript">
|
||||
$.fn.mColorPicker.defaults.imageFolder = "{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/";
|
||||
var currentFormTab = "{if isset($smarty.get.currentFormTab)}{$smarty.get.currentFormTab|escape:'htmlall':'UTF-8'}{elseif isset($currentFormTab) AND $currentFormTab}{$currentFormTab|escape:'htmlall':'UTF-8'}{else}general{/if}";
|
||||
$(document).ready(function() {
|
||||
displayPrivateTab(currentFormTab);
|
||||
})
|
||||
function displayPrivateTab(tab)
|
||||
{
|
||||
$('.private_tab').hide();
|
||||
$('.private_tab_page').removeClass('selected');
|
||||
$('#privateshop_' + tab).show();
|
||||
$('#privateshop_link_' + tab).addClass('selected');
|
||||
$('#currentFormTab').val(tab);
|
||||
if (tab == 'passwordpage' || tab == 'extrafields') {
|
||||
$('#config-footer').hide();
|
||||
$('#privateshop_form_wrapper').removeClass('panel');
|
||||
} else {
|
||||
$('#config-footer').show();
|
||||
$('#privateshop_form_wrapper').addClass('panel');
|
||||
}
|
||||
var currentUrl = new URL(window.location.href);
|
||||
currentUrl.searchParams.set('menu', tab); // Add or update the 'tab' parameter
|
||||
var newUrl = currentUrl.toString();
|
||||
history.pushState({ path: newUrl }, '', newUrl);
|
||||
}
|
||||
</script>
|
||||
<div class="private_shop_container">
|
||||
<div class="col-lg-2 " id="private-shop">
|
||||
<div class="productTabs">
|
||||
<ul class="tab">
|
||||
<li class="tab-row">
|
||||
<a class="private_tab_page selected" id="privateshop_link_general"
|
||||
href="javascript:displayPrivateTab('general');">{l s='General Settings' mod='privateshoplite'}</a>
|
||||
</li>
|
||||
<li class="tab-row">
|
||||
<a class="private_tab_page" id="privateshop_link_control"
|
||||
href="javascript:displayPrivateTab('control');">{l s='Access Control' mod='privateshoplite'}</a>
|
||||
</li>
|
||||
<li class="tab-row">
|
||||
<a class="private_tab_page" id="privateshop_link_customers"
|
||||
href="javascript:displayPrivateTab('customers');">{l s='Private Customers'
|
||||
mod='privateshoplite'}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Tab Content -->
|
||||
<div id="privateshop_form_wrapper" class="col-lg-10 panel">
|
||||
<form action="{$URL|escape:'htmlall':'UTF-8'}" name="privateshop_form" id="privateshop_form" method="post"
|
||||
enctype="multipart/form-data" class="form-horizontal" {if $version <
|
||||
1.6}style="margin-left: 145px;" {/if}>
|
||||
<input type="hidden" id="currentFormTab" name="currentFormTab" value="{if isset($smarty.get.currentFormTab)}{$smarty.get.currentFormTab|escape:'htmlall':'UTF-8'}{elseif isset($currentFormTab) AND $currentFormTab}{$currentFormTab|escape:'htmlall':'UTF-8'}{else}general{/if}" />
|
||||
<div id="privateshop_general" class="private_tab tab-pane" style="display:none;">
|
||||
<h3 class="tab"><img
|
||||
src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/config.png" />
|
||||
{l s='General Settings' mod='privateshoplite'}</h3>
|
||||
<div class="separation"></div>
|
||||
{include file="../admin/general_settings.tpl"}
|
||||
</div>
|
||||
<div id="privateshop_control" class="private_tab tab-pane" style="display:none;">
|
||||
<h3 class="tab"><img
|
||||
src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/access.png" />
|
||||
{l s='Access Control' mod='privateshoplite'}</h3>
|
||||
<div class="separation"></div>
|
||||
{include file="../admin/access_control.tpl"}
|
||||
</div>
|
||||
<div id="privateshop_customers" class="private_tab tab-pane" style="display:none;">
|
||||
<h3 class="tab"><img
|
||||
src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/usr.png" />
|
||||
{l s='Private Customers' mod='privateshoplite'}</h3>
|
||||
<div class="separation"></div>
|
||||
{include file="../admin/customers.tpl"}
|
||||
</div>
|
||||
|
||||
<div class="clearfix"></div>
|
||||
{if $version >= 1.6}
|
||||
<div id="config-footer" class="panel-footer">
|
||||
<button class="btn btn-default pull-right" name="saveConfiguration" type="submit">
|
||||
<i class="process-icon-save"></i>
|
||||
{l s='Save' mod='privateshoplite'}
|
||||
</button>
|
||||
</div>
|
||||
{else}
|
||||
<div id="config-footer" style="text-align:center">
|
||||
<input type="submit" value="{l s='Save' mod='privateshoplite'}" class="button" name="saveConfiguration" />
|
||||
</div>
|
||||
{/if}
|
||||
</form><div class="clearfix"></div>
|
||||
<div class="separation"></div>
|
||||
|
||||
<div>
|
||||
</div>
|
||||
<br></br>
|
||||
<div class="clearfix"></div>
|
||||
{literal}
|
||||
<style type="text/css">
|
||||
/*== PS 1.6 ==*/
|
||||
#private-shop ul.tab {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
margin: 0
|
||||
}
|
||||
|
||||
#private-shop ul.tab li a {
|
||||
background-color: white;
|
||||
border: 1px solid #DDDDDD;
|
||||
display: block;
|
||||
margin-bottom: -1px;
|
||||
padding: 10px 15px;
|
||||
}
|
||||
|
||||
#private-shop ul.tab li a {
|
||||
display: block;
|
||||
color: #555555;
|
||||
text-decoration: none
|
||||
}
|
||||
|
||||
#private-shop ul.tab li a.selected {
|
||||
color: #fff;
|
||||
background: #00AFF0
|
||||
}
|
||||
|
||||
#privateshop_toolbar {
|
||||
clear: both;
|
||||
padding-top: 20px;
|
||||
overflow: hidden
|
||||
}
|
||||
|
||||
#privateshop_toolbar .pageTitle {
|
||||
min-height: 90px
|
||||
}
|
||||
|
||||
#privateshop_toolbar ul {
|
||||
list-style: none;
|
||||
float: right
|
||||
}
|
||||
|
||||
#privateshop_toolbar ul li {
|
||||
display: inline-block;
|
||||
margin-right: 10px
|
||||
}
|
||||
|
||||
#privateshop_toolbar ul li .toolbar_btn {
|
||||
background-color: white;
|
||||
border: 1px solid #CCCCCC;
|
||||
color: #555555;
|
||||
-moz-user-select: none;
|
||||
background-image: none;
|
||||
border-radius: 3px 3px 3px 3px;
|
||||
cursor: pointer;
|
||||
display: inline-block;
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
line-height: 1.42857;
|
||||
margin-bottom: 0;
|
||||
padding: 8px 8px;
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
#privateshop_toolbar ul li .toolbar_btn:hover {
|
||||
background-color: #00AFF0 !important;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
#privateshop_form .language_flags {
|
||||
display: none
|
||||
}
|
||||
</style>
|
||||
{/literal}
|
||||
@@ -0,0 +1,440 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
{literal}
|
||||
<style type="text/css">
|
||||
.frame_styled { display: inline-block; padding: 1.5% !important; border: 1px solid #C7D6DB; background: #F5F8F9; text-align: center;
|
||||
margin-right: 2%; border-radius: 4px; position: relative; cursor: pointer; max-height: 90px; overflow: hidden}
|
||||
.active_frame { background: #c5f7ca; border-color: #72C279}
|
||||
.frame_styled input[type="radio"] { height: 90px; left: 0; position: absolute; top: -10px; width: 100%; opacity: 0; z-index: 99;}
|
||||
.pvt_icon { text-align: center; display: block; clear: both;}
|
||||
.pvt_icon::before { display: inline-block;
|
||||
font-family: FontAwesome; color: #2EACCE;
|
||||
font-size: 32px;
|
||||
font-size-adjust: none;
|
||||
font-stretch: normal;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
text-rendering: auto;}
|
||||
.ac_ico::before {content: "\f1fb";}
|
||||
.ai_ico::before {content: "\f03e";}
|
||||
.ayv_ico::before {content: "\f16a";}
|
||||
.ws_ico::before {content: "\f023";}
|
||||
.os_ico::before {content: "\f13e";}
|
||||
.mod_theme_ico::before {content: "\f0d0";}
|
||||
.def_theme_ico::before {content: "\f0c5";}
|
||||
.red_flag { color: red;}
|
||||
</style>{/literal}
|
||||
<script type="text/javascript">
|
||||
var _activate_customer = {$activate_customer|escape:'htmlall':'UTF-8'};
|
||||
var _tab_module = "{$tab_select|escape:'htmlall':'UTF-8'}";
|
||||
$(document).ready(function(){
|
||||
var chk_box = document.getElementsByName('BACKGROUND_TYPE');
|
||||
for(var i=0; i<chk_box.length;i++)
|
||||
{
|
||||
if (chk_box[i].checked)
|
||||
{
|
||||
var sel_opt = chk_box[i].value;
|
||||
show_bg_option(sel_opt);
|
||||
}
|
||||
}
|
||||
if (_activate_customer > 0 || _tab_module === 'customers') {
|
||||
javascript:displayPrivateTab('customers');
|
||||
}
|
||||
$('.frame_styled').on('click', function(e) {
|
||||
$(this).parent().find('.frame_styled').removeClass('active_frame');
|
||||
$(this).addClass('active_frame');
|
||||
});
|
||||
});
|
||||
|
||||
function show_bg_option(opt)
|
||||
{
|
||||
$('.bg_options').hide();
|
||||
$('#'+opt).show();
|
||||
if(opt.toString() == 'background-image')
|
||||
$('#background-gallery').show();
|
||||
}
|
||||
</script>
|
||||
<!-- login title -->
|
||||
<div class="col-lg-12 form-group margin-form ">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Private Shop?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_ENABLED_DISABLED" id="PRIVATE_ENABLED_DISABLED_on" value="1" {if isset($field_values) AND isset($field_values.PRIVATE_ENABLED_DISABLED) AND $field_values.PRIVATE_ENABLED_DISABLED == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_ENABLED_DISABLED_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_ENABLED_DISABLED" id="PRIVATE_ENABLED_DISABLED_off" value="0" {if isset($field_values) AND isset($field_values.PRIVATE_ENABLED_DISABLED) AND $field_values.PRIVATE_ENABLED_DISABLED == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_ENABLED_DISABLED_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to enable privateshop?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part" >
|
||||
<label class="form-group control-label col-lg-3">{l s='Login Title' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form">
|
||||
<div class="col-lg-6">
|
||||
{foreach from=$languages item=lang}
|
||||
<div class="lang_{$lang.id_lang|escape:'htmlall':'UTF-8'}"id="cpara_{$lang.id_lang|escape:'htmlall':'UTF-8'}"{if $lang.id_lang != $active_lang} style="display:none;"{/if}>
|
||||
<input type="text" class="form-control" name="LOGIN_TITLE_{$lang.id_lang|escape:'htmlall':'UTF-8'}" value="{if isset($field_values) AND isset($field_values.login_title[$lang.id_lang])}{$field_values.login_title[$lang.id_lang]|escape:'htmlall':'UTF-8'}{/if}"/>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
<div class="col-lg-3">{$module->displayFlags($languages, Context::getContext()->language->id, 'cpara¤dd', 'cpara', true) nofilter}{*HTML Content*}</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- login title -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part" >
|
||||
<label class="form-group control-label col-lg-3">{l s='Signup Title' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-6">
|
||||
{foreach from=$languages item=lang}
|
||||
<div class="lang_{$lang.id_lang|escape:'htmlall':'UTF-8'}"id="cpara2_{$lang.id_lang|escape:'htmlall':'UTF-8'}"{if $lang.id_lang != $active_lang} style="display:none;"{/if}>
|
||||
<input type="text" class="form-control" name="SIGNUP_TITLE_{$lang.id_lang|escape:'htmlall':'UTF-8'}" value="{if isset($field_values) AND isset($field_values.signup_title[$lang.id_lang])}{$field_values.signup_title[$lang.id_lang]|escape:'htmlall':'UTF-8'}{/if}"/>
|
||||
</div>
|
||||
{/foreach}
|
||||
</div>
|
||||
<div class="col-lg-3">{$module->displayFlags($languages, Context::getContext()->language->id, 'cpara2¤dd', 'cpara2', true) nofilter}{*HTML Content*}</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- form position -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part" >
|
||||
<label class="control-label col-lg-3">{l s='Form Position' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-2 frame_styled{if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'left'} active_frame{/if}">
|
||||
<span>
|
||||
<input type="radio" name="FORM_POSITION" id="FORM_POSITION_1" value="left" {if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'left'}checked="checked"{/if}/>
|
||||
</span>
|
||||
<div>
|
||||
<label class="t" for="FORM_POSITION_1">
|
||||
<div><center>{l s='Left' mod='privateshoplite'}</center></div>
|
||||
<div><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/l.png"/></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 frame_styled{if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'center'} active_frame{/if}">
|
||||
<span>
|
||||
<input type="radio" name="FORM_POSITION" id="FORM_POSITION_2" value="center" {if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'center'}checked="checked"{/if}/>
|
||||
</span>
|
||||
<div>
|
||||
<label class="t" for="FORM_POSITION_2">
|
||||
<div><center>{l s='Center' mod='privateshoplite'}</center></div>
|
||||
<div><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/c.png"/></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-2 frame_styled{if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'right'} active_frame{/if}">
|
||||
<span>
|
||||
<input type="radio" name="FORM_POSITION" id="FORM_POSITION_3" value="right" {if isset($field_values) AND isset($field_values.position) AND $field_values.position == 'right'}checked="checked"{/if}/>
|
||||
</span>
|
||||
<div>
|
||||
<label class="t" for="FORM_POSITION_3">
|
||||
<div><center>{l s='Right' mod='privateshoplite'}</center></div>
|
||||
<div><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/r.png"/></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
|
||||
<!-- Form Theme selection -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="control-label col-lg-3">{l s='Form Theme' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-9">
|
||||
<div class="col-lg-3 margin-form frame_styled{if isset($field_values) AND isset($field_values.priv_form_theme) AND $field_values.priv_form_theme == 'mod'} active_frame{/if}">
|
||||
<input type="radio" name="PRIVATE_FORM_THEME" id="PRIVATE_FORM_THEME_mod" value="mod" {if isset($field_values) AND isset($field_values.priv_form_theme) AND $field_values.priv_form_theme == 'mod'}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_FORM_THEME_mod">{l s='Modern Theme' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon mod_theme_ico"></i>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 margin-form frame_styled{if isset($field_values) AND isset($field_values.priv_form_theme) AND $field_values.priv_form_theme == 'def'} active_frame{/if}">
|
||||
<input type="radio" name="PRIVATE_FORM_THEME" id="PRIVATE_FORM_THEME_def" value="def" {if isset($field_values) AND isset($field_values.priv_form_theme) AND $field_values.priv_form_theme == 'def'}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_FORM_THEME_def">{l s='Default Theme' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon def_theme_ico"></i>
|
||||
</div>
|
||||
<div style="display: block; clear: both" class="help-block">{l s='Default theme will use your store theme stylesheet.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- opacity option -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Form Background Opacity' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-6">
|
||||
<input type="text" name="BG_OPACITY" value="{if isset($field_values) AND isset($field_values.bg_opacity)}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{/if}" />
|
||||
<div class="help-block">{l s='Use values between 0 and 1 for example 0.6 or 0.85' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- signup -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Signup' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_SIGNUP" id="PRIVATE_SIGNUP_on" value="1" {if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SIGNUP_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_SIGNUP" id="PRIVATE_SIGNUP_off" value="0" {if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SIGNUP_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- birthday menu -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Disable Birthday in Signup' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_BDAY" id="PRIVATE_BDAY_on" value="1" {if isset($field_values) AND isset($field_values.bday) AND $field_values.bday == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_BDAY_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_BDAY" id="PRIVATE_BDAY_off" value="0" {if isset($field_values) AND isset($field_values.bday) AND $field_values.bday == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_BDAY_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Only for PrestaShop 1.7.x versions.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- gender options -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Disable Gender in Signup' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_GENDER_OPT" id="PRIVATE_GENDER_OPT_on" value="1" {if isset($field_values) AND isset($field_values.gender_opt) AND $field_values.gender_opt == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_GENDER_OPT_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_GENDER_OPT" id="PRIVATE_GENDER_OPT_off" value="0" {if isset($field_values) AND isset($field_values.gender_opt) AND $field_values.gender_opt == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_GENDER_OPT_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Only for PrestaShop 1.7.x versions.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- newsletter box -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Disable Newsletter Signup' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_NLETTER_OPT" id="PRIVATE_NLETTER_OPT_on" value="1" {if isset($field_values) AND isset($field_values.nletter_opt) AND $field_values.nletter_opt == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_NLETTER_OPT_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_NLETTER_OPT" id="PRIVATE_NLETTER_OPT_off" value="0" {if isset($field_values) AND isset($field_values.nletter_opt) AND $field_values.nletter_opt == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_NLETTER_OPT_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Only for PrestaShop 1.7.x versions.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Offers box -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Disable Offers Signup' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_OFFERS_OPT" id="PRIVATE_OFFERS_OPT_on" value="1" {if isset($field_values) AND isset($field_values.offers_opt) AND $field_values.offers_opt == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_OFFERS_OPT_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_OFFERS_OPT" id="PRIVATE_OFFERS_OPT_off" value="0" {if isset($field_values) AND isset($field_values.offers_opt) AND $field_values.offers_opt == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_OFFERS_OPT_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Only for PrestaShop 1.7.x versions.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- restricted signup -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Restrict New Accounts?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_SIGNUP_RESTRICT" id="PRIVATE_SIGNUP_RESTRICT_on" value="1" {if isset($field_values) AND isset($field_values.active_signup_restrict) AND $field_values.active_signup_restrict == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SIGNUP_RESTRICT_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_SIGNUP_RESTRICT" id="PRIVATE_SIGNUP_RESTRICT_off" value="0" {if isset($field_values) AND isset($field_values.active_signup_restrict) AND $field_values.active_signup_restrict == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SIGNUP_RESTRICT_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to validate new accounts OR all new accounts have access to webstore.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- show store title heading -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part" >
|
||||
<label class="form-group control-label col-lg-3">{l s='Show store title?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_SHOW_STORE_TITLE" id="PRIVATE_SHOW_STORE_TITLE_on" value="1" {if isset($field_values) AND isset($field_values.show_store_title) AND $field_values.show_store_title == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SHOW_STORE_TITLE_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_SHOW_STORE_TITLE" id="PRIVATE_SHOW_STORE_TITLE_off" value="0" {if isset($field_values) AND isset($field_values.show_store_title) AND $field_values.show_store_title == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SHOW_STORE_TITLE_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Do you want to show store title right after logo on form?' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- show store title heading -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Header and Footer' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_SHOW_HEADER_FOOTER" id="PRIVATE_SHOW_HEADER_FOOTER_on" value="1" {if isset($field_values) AND isset($field_values.show_header_footer) AND $field_values.show_header_footer == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SHOW_HEADER_FOOTER_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_SHOW_HEADER_FOOTER" id="PRIVATE_SHOW_HEADER_FOOTER_off" value="0" {if isset($field_values) AND isset($field_values.show_header_footer) AND $field_values.show_header_footer == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_SHOW_HEADER_FOOTER_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block">{l s='Enable header and footer on private login page.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Offers box -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Use Custom Logo' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_CUSTOM_LOGO" id="PRIVATE_CUSTOM_LOGO_on" value="1" {if isset($field_values) AND isset($field_values.custom_logo) AND $field_values.custom_logo == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_CUSTOM_LOGO_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_CUSTOM_LOGO" id="PRIVATE_CUSTOM_LOGO_off" value="0" {if isset($field_values) AND isset($field_values.custom_logo) AND $field_values.custom_logo == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_CUSTOM_LOGO_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Offers box -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='Custom Logo' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form">
|
||||
<div class="col-lg-9">
|
||||
{if isset($field_values) AND isset($field_values.custom_logo_img) AND !empty($field_values.custom_logo_img)}
|
||||
<img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/private/tmp/{$field_values.custom_logo_img|escape:'htmlall':'UTF-8'}" width="100" style="padding: 1px; border: 1px solid #ccc; margin-bottom: 8px" />
|
||||
<div><button type="button" class="btn btn-danger" id="privateshop-settings-delete-logo" data-filename="{$field_values.custom_logo_img|escape:'htmlall':'UTF-8'}">{l s='Delete' mod='privateshoplite'}</button></div>
|
||||
<div id="logo-message" style="display: none;"></div>
|
||||
{/if}
|
||||
<input class="btn btn-default" type="file" name="custom_logo_img"/>
|
||||
<div class="help-block">{l s='It will be used as logo if custom logo option is turned ON.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- restricted signup message MCE -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="form-group control-label col-lg-3">{l s='New Accounts Message' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
{include file='./textarea_lang.tpl'
|
||||
languages=$languages
|
||||
input_name='restrict_message'
|
||||
class="autoload_rte"
|
||||
input_value=$field_values.restrict_message}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- background selection -->
|
||||
<div class="col-lg-12 form-group margin-form general_selected_part">
|
||||
<label class="control-label col-lg-3">{l s='Background' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-2 margin-form frame_styled{if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-color'} active_frame{/if}">
|
||||
<input type="radio" name="BACKGROUND_TYPE" id="BACKGROUND_TYPE_color" value="background-color" onclick="show_bg_option($(this).val());" {if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-color'}checked="checked"{/if}/>
|
||||
<label class="t" for="BACKGROUND_TYPE_color">{l s='Apply Color' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon ac_ico"></i>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-2 margin-form frame_styled{if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-image'} active_frame{/if}">
|
||||
<input type="radio" name="BACKGROUND_TYPE" id="BACKGROUND_TYPE_image" value="background-image" onclick="show_bg_option($(this).val());" {if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-image'}checked="checked"{/if}/>
|
||||
<label class="t" for="BACKGROUND_TYPE_image">{l s='Apply Image' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon ai_ico"></i>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-4 margin-form frame_styled{if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-video'} active_frame{/if}">
|
||||
<input type="radio" name="BACKGROUND_TYPE" id="BACKGROUND_TYPE_video" value="background-video" onclick="show_bg_option($(this).val());" {if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-video'}checked="checked"{/if}/>
|
||||
<label class="t" for="BACKGROUND_TYPE_video">{l s='Apply YouTube Video' mod='privateshoplite'}</label>
|
||||
<i class="pvt_icon ayv_ico"></i>
|
||||
</div>
|
||||
</div>
|
||||
<!-- background color -->
|
||||
<div class='general_selected_part'>
|
||||
<div id="background-color" class="bg_options col-lg-12 form-group margin-form" style="display:none;">
|
||||
<label class="control-label col-lg-3">{l s='Background Color' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-8">
|
||||
<div class="input-group col-lg-6">
|
||||
<input type="text" class="mColorPicker" id="color_0" value="{if isset($field_values) AND isset($field_values.bg_color)}{$field_values.bg_color|escape:'htmlall':'UTF-8'}{/if}" name="BACKGROUND_COLOR" data-hex="true" />
|
||||
<span id="icp_color_0" class="input-group-addon mColorPickerTrigger" data-mcolorpicker="true"><img src="../img/admin/color.png" /></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- background Video -->
|
||||
<div id="background-video" class="bg_options col-lg-12 form-group margin-form" style="display:none;">
|
||||
<label class="control-label col-lg-3">{l s='Background Youtube Video' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-8">
|
||||
<div class="input-group col-lg-6">
|
||||
<input type="text" class="form-control" value="{if isset($field_values) AND isset($field_values.bg_video)}{$field_values.bg_video|escape:'htmlall':'UTF-8'}{/if}" name="BACKGROUND_VIDEO" />
|
||||
<div class="help-block">{l s='Please use embed link from YouTube like https://www.youtube.com/embed/RdGVz104b3E' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<label class="control-label col-lg-3">{l s='Temporary Background Image' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-8">
|
||||
{if isset($field_values) AND isset($field_values.bg_video_img) AND !empty($field_values.bg_video_img)}
|
||||
<img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}" width="100" id='privateshop-temp-image' style="padding: 1px; border: 1px solid #ccc; margin-bottom: 8px" />
|
||||
<div><button type="button" class="btn btn-danger" id="privateshop-settings-delete-temp-img" data-filename="{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}">{l s='Delete' mod='privateshoplite'}</button></div>
|
||||
<div id="temp-img-message" style="display: none;"></div>
|
||||
{/if}
|
||||
<input class="btn btn-default" type="file" name="bg_video_img"/>
|
||||
<div class="help-block">{l s='It will be used as background image till the video loads.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- background image -->
|
||||
<div id="background-image" class="bg_options col-lg-12 form-group margin-form" style="display:none;" >
|
||||
<label class="control-label col-lg-3">{l s='Background Image' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-8">
|
||||
<input class="btn btn-default" type="file" name="bg_image"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="background-gallery" class="bg_options form-group margin-form" {if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-image'}style="display:block;"{/if}>
|
||||
<label class="control-label col-lg-3">{l s='Select from gallery' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-6">
|
||||
<select name="bg_image_selected">
|
||||
{foreach from=$images item=image}
|
||||
<option value="{$image|escape:'htmlall':'UTF-8'}" {if isset($field_values) AND isset($field_values.bg_type) AND $field_values.bg_type == 'background-image' AND $field_values.bg_img == $image}selected="selected"{/if}>
|
||||
{$image|escape:'htmlall':'UTF-8'}<img src="../admin/delete.png">
|
||||
</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
70
modules/privateshoplite/views/templates/admin/groups.tpl
Normal file
@@ -0,0 +1,70 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<p class="alert alert-info info">{l s='Checked customer groups below will be granted access to your shop.' mod='privateshoplite'}</p>
|
||||
<div class="panel">
|
||||
<!-- customer group management -->
|
||||
<div class="col-lg-12 form-group margin-form">
|
||||
<label class="form-group control-label col-lg-3">{l s='Enable Group Management?' mod='privateshoplite'}</label>
|
||||
<div class="form-group margin-form ">
|
||||
<div class="col-lg-9">
|
||||
<span class="switch prestashop-switch fixed-width-lg">
|
||||
<input type="radio" name="PRIVATE_CUSTOMER_GROUP_STATE" id="PRIVATE_CUSTOMER_GROUP_STATE_on" value="1" {if isset($field_values) AND isset($field_values.cgroup_active) AND $field_values.cgroup_active == 1}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_CUSTOMER_GROUP_STATE_on">{if $version < 1.6}<img src="../img/admin/enabled.gif" alt="Enabled" title="Enabled" />{else}{l s='Yes' mod='privateshoplite'}{/if}</label>
|
||||
<input type="radio" name="PRIVATE_CUSTOMER_GROUP_STATE" id="PRIVATE_CUSTOMER_GROUP_STATE_off" value="0" {if isset($field_values) AND isset($field_values.cgroup_active) AND $field_values.cgroup_active == 0}checked="checked"{/if}/>
|
||||
<label class="t" for="PRIVATE_CUSTOMER_GROUP_STATE_off">{if $version < 1.6}<img src="../img/admin/disabled.gif" alt="Disabled" title="Disabled" />{else}{l s='No' mod='privateshoplite'}{/if}</label>
|
||||
<a class="slide-button btn"></a>
|
||||
</span>
|
||||
<div class="help-block"><strong class="red_flag">*</strong>{l s='Note: Enabling this option will check for logged-in users group access permissions selected below.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group margin-form">
|
||||
<label class="control-label col-lg-3">{l s='Select Groups' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-9">
|
||||
<table class="table std table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>{l s='ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Group Name' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach from=$groups item=group key=k}
|
||||
<tr>
|
||||
<td>
|
||||
<input type="checkbox" id="g{$group.id_group|escape:'htmlall':'UTF-8'}" name="groups[]" value="{$group.id_group|escape:'htmlall':'UTF-8'}" {if isset($selected_groups) AND in_array($group.id_group, $selected_groups)}checked="checked"{/if}>
|
||||
</td>
|
||||
<td>{$group.id_group|escape:'htmlall':'UTF-8'}</td>
|
||||
<td><label for="g{$group.id_group|escape:'htmlall':'UTF-8'}">{$group.name|escape:'htmlall':'UTF-8'}</label></td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group margin-form">
|
||||
<label class="control-label col-lg-3">{l s='Restriction Message:' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-6">
|
||||
{foreach from=$languages item=lang}
|
||||
<div class="lang_{$lang.id_lang|escape:'htmlall':'UTF-8'}" id="cpara44_{$lang.id_lang|escape:'htmlall':'UTF-8'}"{if $lang.id_lang != $active_lang} style="display:none;"{/if}>
|
||||
<textarea class="form-control" name="PRIVATE_CUSTOMER_GROUP_MSG_{$lang.id_lang|escape:'htmlall':'UTF-8'}">{if isset($field_values) AND isset($field_values.cg_mesg[$lang.id_lang])}{$field_values.cg_mesg[$lang.id_lang]|escape:'htmlall':'UTF-8'}{/if}</textarea>
|
||||
</div>
|
||||
{/foreach}
|
||||
<div class="help-block"><strong class="red_flag">*</strong>{l s='Message for non-permitted users.' mod='privateshoplite'}</div>
|
||||
</div>
|
||||
<div class="col-lg-3">{$module->displayFlags($languages, Context::getContext()->language->id, 'cpara44¤dd', 'cpara44', true) nofilter}{*HTML Content*}</div>
|
||||
</div>
|
||||
</div>
|
||||
32
modules/privateshoplite/views/templates/admin/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
54
modules/privateshoplite/views/templates/admin/pages.tpl
Normal file
@@ -0,0 +1,54 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<script type="application/javascript">
|
||||
$(function () {
|
||||
$(document).on("click", ".accordion-header", function() {
|
||||
$(this).toggleClass("active").next().slideToggle();
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<p class="alert alert-info info">{l s='Selected module pages/controllers will be granted access to your shop.' mod='privateshoplite'}</p>
|
||||
{if isset($module_pages) && $module_pages}
|
||||
{foreach item=pages from=$module_pages key=name}
|
||||
<div class="panel">
|
||||
<h3 class="accordion-header">{$name|escape:'htmlall':'UTF-8'}</h3>
|
||||
<div class="accordion-content">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th>{l s='Page ID' mod='privateshoplite'}</th>
|
||||
<th>{l s='Page Name' mod='privateshoplite'}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach item=page from=$pages key=k}
|
||||
<tr>
|
||||
<td width="10%">
|
||||
<label for="{$k|escape:'htmlall':'UTF-8'}">
|
||||
<input type="checkbox" name="MODULE_PAGES[]" value="{$k|escape:'htmlall':'UTF-8'}" {if isset($module_controllers) AND $module_controllers AND in_array($k, $module_controllers)}checked="checked"{/if}>
|
||||
</label>
|
||||
</td>
|
||||
<td width="60%">{$k|escape:'htmlall':'UTF-8'}</td>
|
||||
<td width="30%"><strong id="{$k|escape:'htmlall':'UTF-8'}">{$page|escape:'htmlall':'UTF-8'}</strong></td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{/foreach}
|
||||
{else}
|
||||
<p>{l s='There are no module pages' mod='privateshoplite'}</p>
|
||||
{/if}
|
||||
130
modules/privateshoplite/views/templates/admin/textarea_lang.tpl
Normal file
@@ -0,0 +1,130 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
*
|
||||
* @author FMM Modules
|
||||
* @copyright 2021 FMM Modules
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*}
|
||||
{if $version < 1.6}
|
||||
|
||||
<div class="translatable">
|
||||
{foreach from=$languages item=language}
|
||||
<div id="welcome_{$language.id_lang|escape:'htmlall':'UTF-8'}" class="lang_{$language.id_lang|escape:'htmlall':'UTF-8'}" style="display: {if $language.id_lang == $id_lang} block {else} none{/if};float: left;">
|
||||
<textarea cols="100" rows="10" type="text" id="{$input_name|escape:'htmlall':'UTF-8'}_{$language.id_lang|escape:'htmlall':'UTF-8'}"
|
||||
name="{$input_name|escape:'htmlall':'UTF-8'}_{$language.id_lang|escape:'htmlall':'UTF-8'}"
|
||||
class="autoload_rte" >{if isset($input_value[$language.id_lang])}{$input_value[$language.id_lang]|htmlentitiesUTF8}{*html content*}{/if}</textarea>
|
||||
<span class="hint" name="help_box">{$hint|default:''|escape:'htmlall':'UTF-8'}<span class="hint-pointer"> </span></span>
|
||||
</div>
|
||||
{/foreach}
|
||||
{$module->displayFlags($languages, $active_lang, welcome, welcome, false) nofilter}
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
var iso = '{$iso_tiny_mce|escape:'htmlall':'UTF-8'}';
|
||||
var pathCSS = '{$smarty.const._THEME_CSS_DIR_|escape:'htmlall':'UTF-8'}';
|
||||
var ad = '{$ad|escape:'htmlall':'UTF-8'}';
|
||||
var file_not_found = '';
|
||||
</script>
|
||||
{else}
|
||||
|
||||
{foreach from=$languages item=language}
|
||||
{if $languages|count > 1}
|
||||
<div class="translatable-field row lang-{$language.id_lang|escape:'htmlall':'UTF-8'}">
|
||||
<div class="col-lg-9">
|
||||
{/if}
|
||||
<textarea id="{$input_name|escape:'htmlall':'UTF-8'}_{$language.id_lang|escape:'htmlall':'UTF-8'}" name="{$input_name|escape:'htmlall':'UTF-8'}_{$language.id_lang|escape:'htmlall':'UTF-8'}" class="{if isset($class)}{$class|escape:'htmlall':'UTF-8'}{else}textarea-autosize{/if}"{if isset($maxlength) && $maxlength} maxlength="{$maxlength|intval|escape:'htmlall':'UTF-8'}"{/if}>{if isset($input_value[$language.id_lang])}{$input_value[$language.id_lang]|htmlentitiesUTF8}{*html content*}{/if}</textarea>
|
||||
|
||||
{if $languages|count > 1}
|
||||
</div>
|
||||
<div class="col-lg-2">
|
||||
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
|
||||
{$language.iso_code|escape:'htmlall':'UTF-8'}
|
||||
<span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
{foreach from=$languages item=language}
|
||||
<li><a href="javascript:hideOtherLanguage({$language.id_lang|escape:'htmlall':'UTF-8'});">{$language.name|escape:'htmlall':'UTF-8'}</a></li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{/foreach}
|
||||
<div class="help-block">{l s='This message will be displayed after registration of restricted customers. You can use HTML tags, images, links etc...' mod='privateshoplite'}</div>
|
||||
<script type="text/javascript">
|
||||
$(".textarea-autosize").autosize();
|
||||
</script>
|
||||
{/if}
|
||||
|
||||
{literal}
|
||||
<script type="text/javascript">
|
||||
var file_not_found = '';
|
||||
$(document).ready(function ()
|
||||
{
|
||||
$('.displayed_flag .pointer').addClass('btn btn-default');
|
||||
$('.language_flags').addClass('well').css('display','inline-block').hide();
|
||||
hideOtherLanguage({/literal}{$active_lang|escape:'htmlall':'UTF-8'}{literal});
|
||||
setTimeout(function() {
|
||||
tinyMCE.init({
|
||||
mode : "textareas",
|
||||
theme : "modern",
|
||||
plugins : "pagebreak,layer,table,image,link,media,searchreplace,contextmenu,paste,directionality,fullscreen",
|
||||
theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
|
||||
theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,,|,forecolor,backcolor",
|
||||
theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,media,|,ltr,rtl,|,fullscreen",
|
||||
theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,pagebreak",
|
||||
theme_advanced_toolbar_location : "top",
|
||||
theme_advanced_toolbar_align : "left",
|
||||
// theme_advanced_statusbar_location : "bottom",
|
||||
theme_advanced_resizing : false,
|
||||
skin: 'prestashop',
|
||||
toolbar1:
|
||||
'code,colorpicker,bold,italic,underline,strikethrough,blockquote,link,align,bullist,numlist,table,image,media,formatselect',
|
||||
document_base_url : "{/literal}{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}{literal}",
|
||||
height: "auto",
|
||||
font_size_style_values : "8pt, 10pt, 12pt, 14pt, 18pt, 24pt, 36pt",
|
||||
template_external_list_url : "lists/template_list.js",
|
||||
external_link_list_url : "lists/link_list.js",
|
||||
external_image_list_url : "lists/image_list.js",
|
||||
media_external_list_url : "lists/media_list.js",
|
||||
elements : "nourlconvert",
|
||||
entity_encoding: "raw",
|
||||
convert_urls : false,
|
||||
language : "{/literal}{$iso_tiny_mce|escape:'htmlall':'UTF-8'}{literal}"
|
||||
});
|
||||
}, 3000);
|
||||
id_language = Number("{/literal}{$active_lang|escape:'htmlall':'UTF-8'}{literal}");
|
||||
});
|
||||
function hideOtherLanguage(id)
|
||||
{
|
||||
$('.translatable-field').hide();
|
||||
$('.lang-' + id).show();
|
||||
|
||||
var id_old_language = id_language;
|
||||
id_language = id;
|
||||
|
||||
if (id_old_language != id)
|
||||
changeEmployeeLanguage();
|
||||
|
||||
updateCurrentText();
|
||||
}
|
||||
|
||||
function changeEmployeeLanguage()
|
||||
{
|
||||
if (typeof allowEmployeeFormLang !== 'undefined' && allowEmployeeFormLang)
|
||||
$.post("index.php", {
|
||||
action: 'formLanguage',
|
||||
tab: 'AdminEmployees',
|
||||
ajax: 1,
|
||||
token: employee_token,
|
||||
form_language_id: id_language
|
||||
});
|
||||
}
|
||||
</script>{/literal}
|
||||
125
modules/privateshoplite/views/templates/front/deadend.tpl
Normal file
@@ -0,0 +1,125 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<!DOCTYPE HTML>
|
||||
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8 ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js lt-ie9 ie8" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if gt IE 8]> <html class="no-js ie9" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<html lang="{$language_code|escape:'htmlall':'UTF-8'}">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>{$meta_title|escape:'htmlall':'UTF-8'}</title>
|
||||
{if isset($meta_description)}
|
||||
<meta name="description" content="{$meta_description|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
{if isset($meta_keywords)}
|
||||
<meta name="keywords" content="{$meta_keywords|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
<meta name="generator" content="PrestaShop" />
|
||||
<meta name="robots" content="{if isset($nobots)}no{/if}index,{if isset($nofollow) && $nofollow}no{/if}follow" />
|
||||
<meta name="viewport" content="width=device-width, minimum-scale=0.25, maximum-scale=1.6, initial-scale=1.0" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript" src="{$base_uri|escape:'htmlall':'UTF-8'}js/jquery/jquery-1.11.0.min.js"></script>
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/jquery.tubular.1.0.js"></script>
|
||||
{/if}
|
||||
{/if}
|
||||
<link rel="shortcut icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/private.css" type="text/css" charset="utf-8" />
|
||||
{if $version > 0}
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}custom.css" type="text/css" media="all" charset="utf-8" />
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}theme.css" type="text/css" media="all" charset="utf-8" />
|
||||
{/if}
|
||||
{literal}
|
||||
<!-- inline css -->
|
||||
<style type="text/css">
|
||||
html { padding: 0px;}
|
||||
body
|
||||
{
|
||||
height: 100% !important;
|
||||
margin: 0;
|
||||
background: rgba(77,117,219,1);
|
||||
background: -moz-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -webkit-gradient(left top, right top, color-stop(0%, rgba(77,117,219,1)), color-stop(55%, rgba(120,155,227,1)), color-stop(100%, rgba(120,155,227,1)));
|
||||
background: -webkit-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -o-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: linear-gradient(to right, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d75db', endColorstr='#789be3', GradientType=1 );
|
||||
}
|
||||
#bg-private-image{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/{$field_values.bg_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#bg-private-image_video{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
body#bg-private-color{
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
background: {/literal}{$field_values.bg_color|escape:'htmlall':'UTF-8'}{literal};
|
||||
}
|
||||
.bg_opacity {
|
||||
background:rgb(241,241,241,{/literal}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
.bg_opacity_white {
|
||||
background:rgb(255,255,255,{/literal}{$field_values.bg_opacity/2|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
</style><!--/inline css-->
|
||||
{/literal}
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript">{literal}
|
||||
var psNew = parseInt("{if $version ge '1.7'}1{else}0{/if}");
|
||||
$(document).ready(function() {
|
||||
var wrapper = (psNew)? '#wrapper' : '#page';
|
||||
$(wrapper).tubular({videoId: {/literal}'{$field_values.bg_video}'{literal}}); {*html content*}
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
{/if}
|
||||
</head>
|
||||
<body {if isset($field_values) AND $field_values.bg_type}{if $field_values.bg_type == "background-image" AND isset($field_values.bg_img)}id="bg-private-image"{elseif $field_values.bg_type == "background-video" AND isset($field_values.bg_video_img)}id="bg-private-image_video"{else if isset($field_values.bg_color) AND $field_values.bg_type == 'background-color'}id="bg-private-color"{/if}{/if}>
|
||||
<div id="wrapper"{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'} class="bg_opacity"{elseif $field_values.position == 'right'} class="bg_opacity"{/if} style="{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}float: left; margin-left:3%;{elseif $field_values.position == 'right'}float: right; margin-right:3%;{elseif $field_values.position == 'center'}margin:0 auto;{/if}" {if isset($field_values) AND $field_values.position == 'center'}class="center_align bg_opacity"{/if}>
|
||||
<div id="privatebox">
|
||||
<div class="container bg_opacity_white" id="fmm_ps17">
|
||||
<p style="text-align:center;"><img src="{if isset($field_values.custom_logo) && $field_values.custom_logo > 0}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.custom_logo_img|escape:'htmlall':'UTF-8'}{else}{$logo_url|escape:'htmlall':'UTF-8'}{/if}" alt="logo" /></p>
|
||||
{if isset($field_values.restrict_message) AND empty($field_values.restrict_message)}
|
||||
<div id="restricted">
|
||||
<h1>{l s='You do not have permission to view this page.' mod='privateshoplite'}</h1>
|
||||
</div>
|
||||
{else}
|
||||
{$field_values.restrict_message nofilter}{*HTML Content*}
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
23
modules/privateshoplite/views/templates/front/errors.tpl
Normal file
@@ -0,0 +1,23 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
{if isset($errors) && $errors}
|
||||
<div class="alert alert-danger" id="ps17_errors">
|
||||
<ol>
|
||||
{foreach from=$errors key=k item=error}
|
||||
<li>{$error}</li>{*html content*}
|
||||
{/foreach}
|
||||
</ol>
|
||||
</div>
|
||||
{/if}
|
||||
32
modules/privateshoplite/views/templates/front/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
45
modules/privateshoplite/views/templates/front/password.tpl
Normal file
@@ -0,0 +1,45 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<div class="box">
|
||||
<h1 class="page-subheading">{l s='Forgot your password?' mod='privateshoplite'}</h1>
|
||||
|
||||
{*include file="$tpl_dir./errors.tpl"*}
|
||||
|
||||
{if isset($confirmation) && $confirmation == 1}
|
||||
<p class="alert alert-success">{l s='Your password has been successfully reset and a confirmation has been sent to your email address:' mod='privateshoplite'} {if isset($customer_email)}{$customer_email|escape:'htmlall':'UTF-8'|stripslashes}{/if}</p>
|
||||
{elseif isset($confirmation) && $confirmation == 2}
|
||||
<p class="alert alert-success">{l s='A confirmation email has been sent to your address:' mod='privateshoplite'} {if isset($customer_email)}{$customer_email|escape:'htmlall':'UTF-8'|stripslashes}{/if}</p>
|
||||
{else}
|
||||
<p>{l s='Please enter the email address you used to register. We will then send you a new password. ' mod='privateshoplite'}</p>
|
||||
<form action="{$request_uri|escape:'htmlall':'UTF-8'}" method="post" class="std" id="form_forgotpassword">
|
||||
<input type="hidden" name="private_pass_recovery" value="1">
|
||||
<fieldset>
|
||||
<div class="form-group">
|
||||
<label for="email">{l s='Email address' mod='privateshoplite'}</label>
|
||||
<input class="form-control" type="text" placeholder="{l s='Email address' mod='privateshoplite'}" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|escape:'htmlall':'UTF-8'|stripslashes}{/if}" />
|
||||
</div>
|
||||
<p class="submit">
|
||||
{if $version < 1.6}
|
||||
<input type="submit" class="button" name="forgotpassword" value="{l s='Retrieve Password' mod='privateshoplite'}" />
|
||||
{else}
|
||||
<button type="submit" class="btn btn-default button button-medium" name="forgotpassword"><span>{l s='Retrieve Password' mod='privateshoplite'}<i class="icon-chevron-right right"></i></span></button>
|
||||
{/if}
|
||||
</p>
|
||||
</fieldset>
|
||||
</form>
|
||||
{/if}
|
||||
</div>
|
||||
<ul class="clearfix footer_links">
|
||||
<li><a class="btn btn-default button button-small" href="javascript:void(0);" title="{l s='Back to Login' mod='privateshoplite'}" rel="nofollow" onclick="BackToLogin();"><span><i class="icon-chevron-left"></i>{l s='Back to Login' mod='privateshoplite'}</span></a></li>
|
||||
</ul>
|
||||
@@ -0,0 +1,43 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<div class="box">
|
||||
<h1 class="page-subheading">{l s='Forgot your password?' mod='privateshoplite'}</h1>
|
||||
{if isset($confirmation) && $confirmation == 1}
|
||||
<p class="alert alert-success">{l s='Your password has been successfully reset and a confirmation has been sent to your email address:' mod='privateshoplite'} {if isset($customer_email)}{$customer_email|escape:'htmlall':'UTF-8'|stripslashes}{/if}</p>
|
||||
{elseif isset($confirmation) && $confirmation == 2}
|
||||
<p class="alert alert-success">{l s='A confirmation email has been sent to your address:' mod='privateshoplite'} {if isset($customer_email)}{$customer_email|escape:'htmlall':'UTF-8'|stripslashes}{/if}</p>
|
||||
{else}
|
||||
<p>{l s='Please enter the email address you used to register. We will then send you a new password. ' mod='privateshoplite'}</p>
|
||||
<form action="{$request_uri|escape:'htmlall':'UTF-8'}" method="post" class="std" id="form_forgotpassword">
|
||||
<input type="hidden" name="private_pass_recovery" value="1">
|
||||
<fieldset>
|
||||
<div class="form-group">
|
||||
<label for="email">{l s='Email address' mod='privateshoplite'}</label>
|
||||
<input class="form-control" type="text" placeholder="{l s='Email address' mod='privateshoplite'}" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|escape:'htmlall':'UTF-8'|stripslashes}{/if}" />
|
||||
</div>
|
||||
<p class="submit">
|
||||
{if $version < 1.6}
|
||||
<input type="submit" class="button" name="forgotpassword" value="{l s='Retrieve Password' mod='privateshoplite' mod='privateshoplite'}" />
|
||||
{else}
|
||||
<button type="submit" class="btn btn-default button button-medium" name="forgotpassword"><span>{l s='Retrieve Password' mod='privateshoplite'}<i class="icon-chevron-right right"></i></span></button>
|
||||
{/if}
|
||||
</p>
|
||||
</fieldset>
|
||||
</form>
|
||||
{/if}
|
||||
</div>
|
||||
<ul class="clearfix footer_links">
|
||||
<li><a class="btn btn-default button button-small" title="{l s='Back to Login' mod='privateshoplite'}" rel="nofollow" href="javascript:void(0);"
|
||||
onclick="BackToLogin();"><span><i class="icon-chevron-left"></i>{l s='Back to Login' mod='privateshoplite'}</span></a></li>
|
||||
</ul>
|
||||
410
modules/privateshoplite/views/templates/front/private-block.tpl
Normal file
@@ -0,0 +1,410 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
<!-- inline css -->
|
||||
<style type="text/css">
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-image" AND isset($field_values.bg_img)}
|
||||
|
||||
{* #bg-private-image *}
|
||||
{literal}
|
||||
#module-privateshoplite-private #wrapper, #module-privateshoplite-private div.columns-container {
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/{$field_values.bg_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
|
||||
}
|
||||
{/literal}
|
||||
{elseif $field_values.bg_type == "background-video" AND isset($field_values.bg_video_img)}
|
||||
{* #bg-private-image_video *}
|
||||
{literal}
|
||||
#module-privateshoplite-private #wrapper, #module-privateshoplite-private div.columns-container {
|
||||
background-color: azure;
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
{/literal}
|
||||
{if $version >= '1.7'}
|
||||
{literal}
|
||||
#module-privateshoplite-private #header, #module-privateshoplite-private #footer {
|
||||
position: relative;
|
||||
z-index: 99;
|
||||
background: #333; /*changed here*/
|
||||
}
|
||||
{/literal}
|
||||
{/if}
|
||||
{else if isset($field_values.bg_color) AND $field_values.bg_type == 'background-color'}
|
||||
{* div#bg-private-color *}
|
||||
{literal}
|
||||
#module-privateshoplite-private #wrapper, #module-privateshoplite-private div.columns-container {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
background: {/literal}{$field_values.bg_color|escape:'htmlall':'UTF-8'}!important;{literal};
|
||||
}
|
||||
{/literal}
|
||||
{/if}
|
||||
{/if}
|
||||
{literal}
|
||||
.bg_opacity {
|
||||
background:rgb(241,241,241,{/literal}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
.bg_opacity_white {
|
||||
background:rgb(255,255,255,{/literal}{$field_values.bg_opacity/2|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
#gif_loader {
|
||||
background-color: rgba(255,255,255,0.5);
|
||||
position: absolute; left: 0; top: 0; width: 100%; height: 101%; z-index: 9;
|
||||
background-image:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/load.gif"{literal});
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
}
|
||||
#new-private-account { position: relative}
|
||||
.date-select > label { margin-left: 15px!important;}
|
||||
.show_comment { display: inline-block!important; }
|
||||
</style><!--/inline css-->
|
||||
{/literal}
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
var baseUri = "{$base_uri|escape:'htmlall':'UTF-8'}";
|
||||
var token = "{$token|escape:'htmlall':'UTF-8'}";
|
||||
var ajax_url = "{$ajax_link|escape:'htmlall':'UTF-8'}";
|
||||
var psNew = parseInt("{if $version ge '1.7'}1{else}0{/if}");
|
||||
//]]>
|
||||
</script>
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript">
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
setBGvideo('{$field_values.bg_video}'); //html content
|
||||
});
|
||||
</script>
|
||||
{/if}
|
||||
{/if}
|
||||
{if $persist == 1 AND isset($persist)}
|
||||
<script type="text/javascript">
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
forgot_password();
|
||||
});
|
||||
</script>
|
||||
{/if}
|
||||
<div {if $field_values.priv_form_theme == 'mod'}class="{if $version >= 1.7}ps17{else}ps16{/if} private_modern_theme"{/if}>
|
||||
<div id="private-wrapper"
|
||||
{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}class="bg_opacity"{elseif $field_values.position == 'right'} class="bg_opacity"{/if}
|
||||
style="{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}float: left; margin-left:3%;{elseif $field_values.position == 'right'}float: right; margin-right:3%;{elseif $field_values.position == 'center'}margin:0 auto;{/if}"
|
||||
{if isset($field_values) AND $field_values.position == 'center'}class="center_align bg_opacity"{/if}>
|
||||
<div id="privatebox">
|
||||
<div id="fmm_{if $version >= 1.7}ps17{else}ps16{/if}" class="container bg_opacity_white">
|
||||
<p id="logo_basic">
|
||||
<img src="{if isset($field_values.custom_logo) && $field_values.custom_logo > 0}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.custom_logo_img|escape:'htmlall':'UTF-8'}{else}{$logo_url|escape:'htmlall':'UTF-8'}{/if}" alt="logo" />
|
||||
</p>
|
||||
{if $deadend}
|
||||
{if isset($field_values.restrict_message) AND empty($field_values.restrict_message)}
|
||||
<div id="restricted">
|
||||
<h1>{l s='You do not have permission to view this page.' mod='privateshoplite'}</h1>
|
||||
</div>
|
||||
{else}
|
||||
{$field_values.restrict_message nofilter}{*HTML Content*}
|
||||
{/if}
|
||||
{else}
|
||||
{if $field_values.show_store_title > 0}<h1 class="pshop_title_shop">{$shop_name|escape:'htmlall':'UTF-8'}</h1>{/if}
|
||||
<div id="center_column" class="private_login">
|
||||
{if $version >= 1.7}
|
||||
{include file="module:privateshoplite/views/templates/front/errors.tpl"}
|
||||
{else}
|
||||
{include file="$tpl_dir./errors.tpl"}
|
||||
{/if}
|
||||
<div id="error_holder"></div>
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<!-- create form -->
|
||||
<div id="new-private-account" style="display:none;">
|
||||
<form method="post" class="js-customer-form" id="customer-form" enctype="multipart/form-data">
|
||||
<section>
|
||||
<input type="hidden" value="" name="id_customer">
|
||||
{if isset($field_values.gender_opt) && $field_values.gender_opt <= 0}
|
||||
<div class="form-group row social_title">
|
||||
<label class="col-md-3 form-control-label">
|
||||
{l s='Social title' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6 form-control-valign">
|
||||
<label class="radio-inline">
|
||||
<span class="custom-radio">
|
||||
<input type="radio" value="1" name="id_gender">
|
||||
<span></span>
|
||||
</span>
|
||||
{l s='Mr.' mod='privateshoplite'}
|
||||
</label>
|
||||
<label class="radio-inline">
|
||||
<span class="custom-radio">
|
||||
<input type="radio" value="2" name="id_gender">
|
||||
<span></span>
|
||||
</span>
|
||||
{l s='Mrs.' mod='privateshoplite'}
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='First name' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" placeholder="{l s='First name' mod='privateshoplite'}" required="" value="" name="firstname" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Last name' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" required="" placeholder="{l s='Last name' mod='privateshoplite'}" value="" name="lastname" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Email' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="email" required="" placeholder="{l s='Email' mod='privateshoplite'}" value="" name="email_account" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Password' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<div class="input-group js-parent-focus">
|
||||
<input type="password" required="" value="" placeholder="{l s='Password' mod='privateshoplite'}" name="password" class="form-control js-child-focus js-visible-password">
|
||||
<span class="input-group-btn pshop_show_hide">
|
||||
<button data-text-hide="{l s='Hide' mod='privateshoplite'}" onclick="toggleVis(this);" data-text-show="{l s='Show' mod='privateshoplite'}" data-action="show-password" type="button" class="btn">
|
||||
{l s='Show' mod='privateshoplite'}
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{if isset($field_values.bday) && $field_values.bday <= 0}
|
||||
<div class="form-group row ">
|
||||
<div class="birth-date-select">
|
||||
<label class="col-lg-3">{l s='Birthday' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-6">
|
||||
<div>
|
||||
<select id="days" name="days" class="form-control no-uniform">
|
||||
<option value="">-</option>
|
||||
{foreach from=$days item=day}
|
||||
<option value="{$day|escape:'htmlall':'UTF-8'}" {if ($sl_day == $day)} selected="selected"{/if}>{$day|escape:'htmlall':'UTF-8'} </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div>
|
||||
<select id="months" name="months" class="form-control no-uniform">
|
||||
<option value="">-</option>
|
||||
{foreach from=$months key=k item=month}
|
||||
<option value="{$k|escape:'htmlall':'UTF-8'}" {if ($sl_month == $k)} selected="selected"{/if}>{l s=$month|escape:'htmlall':'UTF-8' mod='privateshoplite' } </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div>
|
||||
<select id="years" name="years" class="form-control no-uniform">
|
||||
<option value="">-</option>
|
||||
{foreach from=$years item=year}
|
||||
<option value="{$year|escape:'htmlall':'UTF-8'}" {if ($sl_year == $year)} selected="selected"{/if}>{$year|escape:'htmlall':'UTF-8'} </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div class="col-md-3 form-control-comment show_comment">
|
||||
{l s='Optional' mod='privateshoplite'}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{if isset($field_values.offers_opt) && $field_values.offers_opt <= 0}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label"></label>
|
||||
<div class="col-md-6">
|
||||
<span class="custom-checkbox">
|
||||
<input id="optin" class="no-uniform" type="checkbox" value="1" name="optin">
|
||||
{if $version >= 1.7}<span><i class="material-icons checkbox-checked"></i></span>{/if}
|
||||
<label for="optin">{l s='Receive offers from our partners' mod='privateshoplite'}</label>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{if isset($field_values.nletter_opt) && $field_values.nletter_opt <= 0}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label"></label>
|
||||
<div class="col-md-6">
|
||||
<span class="custom-checkbox">
|
||||
<input id="newsletter" class="no-uniform" type="checkbox" value="1" name="newsletter">
|
||||
{if $version >= 1.7}<span><i class="material-icons checkbox-checked"></i></span>{/if}
|
||||
<label for="newsletter">{l s='Sign up for our newsletter' mod='privateshoplite'}<br><em></em></label>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{$hook_create_account_form nofilter}
|
||||
</section>
|
||||
<footer class="form-footer clearfix">
|
||||
<input type="hidden" value="1" name="submitCreate">
|
||||
<button type="button" data-link-action="save-customer" onclick="registerNewUser(this);" class="btn btn-primary form-control-submit pull-xs-right">
|
||||
{l s='Save' mod='privateshoplite'}
|
||||
</button>
|
||||
<a href="javascript:void(0);" onclick="Login();">
|
||||
<span>{l s='Log in instead!' mod='privateshoplite'}</span>
|
||||
</a>
|
||||
</footer>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
<div id="gif_loader" style="display: none"></div>
|
||||
</div> <!-- /create form ends-->
|
||||
{/if}
|
||||
<!-- login form -->
|
||||
<div id="private-login">
|
||||
<form action="{$link->getPageLink('authentication', true)|escape:'htmlall':'UTF-8'}" method="post" id="login_form" class="box">
|
||||
<h2 class="private-subheading">{if isset($field_values) AND isset($field_values.login_title) AND $field_values.login_title}{$field_values.login_title|escape:'htmlall':'UTF-8'}{else}{l s='Private Login' mod='privateshoplite'}{/if}</h2>
|
||||
<div class="form_content clearfix">
|
||||
<table class="private_login_table">
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="email">{l s='Email address' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Email address' mod='privateshoplite'}" class="is_required validate account_input form-control" data-validate="isEmail" type="text" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td><td> </td></tr>
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="passwd">{l s='Password' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Password' mod='privateshoplite'}" class="is_required validate account_input form-control" type="password" data-validate="isPasswd" id="passwd" name="passwd" value="{if isset($smarty.post.passwd)}{$smarty.post.passwd|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td></tr>
|
||||
</table>
|
||||
<ul id="pshop_bottom_footer">
|
||||
<li><p class="lost_password form-group"><a id="lost-password" href="javascript:;" title="{l s='Recover your forgotten password' mod='privateshoplite'}" rel="nofollow" onclick="forgot_password()">{l s='Forgot your password?' mod='privateshoplite'}</a></p></li>
|
||||
<li class="submit">
|
||||
{if isset($back)}<input type="hidden" class="hidden" name="back" value="{$back|escape:'htmlall':'UTF-8'}" />{/if}
|
||||
<div class="private-login-footer-button">
|
||||
{if $version >= 1.6}
|
||||
<button type="submit" id="SubmitLogin" name="SubmitLogin" class="button btn btn-default button-medium">
|
||||
<span>
|
||||
<i class="icon-lock left"></i>
|
||||
{l s='Sign in' mod='privateshoplite'}
|
||||
</span>
|
||||
</button>
|
||||
{else}
|
||||
<input type="submit" id="SubmitLogin" name="SubmitLogin" class="button" value="{l s='Log in' mod='privateshoplite'}"/>
|
||||
{/if}
|
||||
</div>
|
||||
<div class="private-login-footer-button">
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<a class="button btn btn-default button-medium exclusive" type="submit" id="register" name="register" onclick="SignUp();">
|
||||
<span>
|
||||
{l s='Sign Up' mod='privateshoplite'}
|
||||
</span>
|
||||
</a>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</form>
|
||||
</div> <!-- /login form ends -->
|
||||
<div id="private-lost-password" style="display:none;">
|
||||
{if $version >= 1.7}
|
||||
{include file="module:privateshoplite/views/templates/front/password_17.tpl"}
|
||||
{else}
|
||||
{include file="./password.tpl"}
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<div id="private-contact-form" style="display:none;">
|
||||
<form method="post" id="privateshoplite_customer_contact_form" class="box">
|
||||
<div class="form-group row">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Email address' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-9">
|
||||
<input class="form-control" name="email" required="required" type="email" placeholder="{l s='Email address' mod='privateshoplite'}" id="customer_message_email" value="{if isset($smarty.post.email)}{$smarty.post.email|stripslashes|escape:'htmlall':'UTF-8'}{/if}">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Subject' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-9">
|
||||
<input class="form-control" name="subject" required="required" type="text" placeholder="{l s='Subject' mod='privateshoplite'}" id="customer_message_subject" value="{if isset($smarty.post.subject)}{$smarty.post.subject|stripslashes|escape:'htmlall':'UTF-8'}{/if}">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Message' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-9">
|
||||
<textarea class="form-control" name="message" required="required" id="customer_message_message" placeholder="{l s='Message' mod='privateshoplite'}">{if isset($smarty.post.message)}{$smarty.post.message|stripslashes|escape:'htmlall':'UTF-8'}{/if}</textarea>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<footer class="form-footer text-sm-center clearfix">
|
||||
<button type="button" name='SubmitContactForm' id='SubmitContactForm' class="btn btn-primary" onclick="sendMessage(this);">
|
||||
{l s='Send' mod='privateshoplite'}
|
||||
</button>
|
||||
<button type="button" id="submit-contact" class="btn btn-primary" onclick="backToPrevious();">
|
||||
{l s='Back' mod='privateshoplite'}
|
||||
</button>
|
||||
</footer>
|
||||
</form>
|
||||
</div> <!-- /contact form ends -->
|
||||
<div id="private-back" class="col-lg-12 col-sm-12 mt-1 p-0" style="display:none;">
|
||||
<p class="alert alert-info info" id='privateshoplite_pending_message'>{l s='Your account is under review. Your will receive confirmation email soon.' mod='privateshoplite'}</p>
|
||||
<button id="default_back" onclick="window.location.reload();" class="btn btn-default col-lg-12">{l s='Back' mod='privateshoplite'}</button>
|
||||
</div>
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div><div class="clearfix"></div>
|
||||
</div>
|
||||
<style>
|
||||
.private-login-footer-button {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,15 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
{$PRIVATE_BLOCK} {* html content *}
|
||||
@@ -0,0 +1,19 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
|
||||
{extends file='page.tpl'}
|
||||
|
||||
{block name='page_content_container'}
|
||||
{$PRIVATE_BLOCK nofilter} {* html content *}
|
||||
{/block}
|
||||
511
modules/privateshoplite/views/templates/front/private_login.tpl
Normal file
@@ -0,0 +1,511 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<!DOCTYPE HTML>
|
||||
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8 ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js lt-ie9 ie8" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if gt IE 8]> <html class="no-js ie9" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<html lang="{$language_code|escape:'htmlall':'UTF-8'}">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>{$meta_title|escape:'htmlall':'UTF-8'}</title>
|
||||
{if isset($meta_description)}
|
||||
<meta name="description" content="{$meta_description|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
{if isset($meta_keywords)}
|
||||
<meta name="keywords" content="{$meta_keywords|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
<meta name="generator" content="PrestaShop" />
|
||||
<meta name="robots" content="{if isset($nobots)}no{/if}index,{if isset($nofollow) && $nofollow}no{/if}follow" />
|
||||
<meta name="viewport" content="width=device-width, minimum-scale=0.25, maximum-scale=1.6, initial-scale=1.0" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
|
||||
{if $version < 1.7}
|
||||
<script type="text/javascript" src="{$jQuery_path|escape:'htmlall':'UTF-8'}"></script>
|
||||
{/if}
|
||||
<!-- Js defination vars -->
|
||||
{if isset($js_defer) && !$js_defer && isset($js_files) && isset($js_def)}
|
||||
{if isset($js_def) AND is_array($js_def)}
|
||||
<script type="text/javascript">
|
||||
{foreach from=$js_def key=js_var item=js_value}
|
||||
var {$js_var} = '{$js_value}'; {*html content*}
|
||||
{/foreach}
|
||||
</script>
|
||||
{else}
|
||||
{$js_def} {*html content*}
|
||||
{/if}
|
||||
{foreach from=$js_files item=js_uri}
|
||||
<script type="text/javascript" src="{$js_uri|escape:'html':'UTF-8'}"></script>
|
||||
{/foreach}
|
||||
{/if}
|
||||
<script type="text/javascript" src="{$js_dir|escape:'htmlall':'UTF-8'}/global.js"></script>
|
||||
<script type="text/javascript" src="{if $force_ssl}{$base_dir_ssl|escape:'htmlall':'UTF-8'}{else}{$base_dir|escape:'htmlall':'UTF-8'}{/if}js/tools.js"></script>
|
||||
<script type="text/javascript" src="{$js_dir|escape:'htmlall':'UTF-8'}autoload/15-jquery.total-storage.min.js"></script>
|
||||
<script type="text/javascript" src="{$js_dir|escape:'htmlall':'UTF-8'}autoload/15-jquery.uniform-modified.js"></script>
|
||||
<script type="text/javascript" src="{$js_dir|escape:'htmlall':'UTF-8'}tools/statesManagement.js"></script>
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/validate.js"></script>
|
||||
{if $version >= 1.6}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/authentication16.js"></script>
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/authentication16.css" type="text/css" media="all" charset="utf-8" />
|
||||
{else}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/authentication15.js"></script>
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/authentication15.css" type="text/css" media="all" charset="utf-8" />
|
||||
{/if}
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/jquery.tubular.1.0.js"></script>
|
||||
{/if}
|
||||
{/if}
|
||||
<link rel="shortcut icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/private.css" type="text/css" charset="utf-8" />
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}global.css" type="text/css" media="all" charset="utf-8" />
|
||||
|
||||
{literal}
|
||||
<!-- inline css -->
|
||||
<style type="text/css">
|
||||
body
|
||||
{
|
||||
height: 100% !important;
|
||||
margin: 0;
|
||||
background: rgba(77,117,219,1);
|
||||
background: -moz-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -webkit-gradient(left top, right top, color-stop(0%, rgba(77,117,219,1)), color-stop(55%, rgba(120,155,227,1)), color-stop(100%, rgba(120,155,227,1)));
|
||||
background: -webkit-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -o-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: linear-gradient(to right, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d75db', endColorstr='#789be3', GradientType=1 );
|
||||
}
|
||||
#bg-private-image{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/{$field_values.bg_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#bg-private-image_video{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
body#bg-private-color{
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
background: {/literal}{$field_values.bg_color|escape:'htmlall':'UTF-8'}{literal};
|
||||
}
|
||||
.bg_opacity
|
||||
{
|
||||
background:rgb(241,241,241,{/literal}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
.bg_opacity_white
|
||||
{
|
||||
background:rgb(255,255,255,{/literal}{$field_values.bg_opacity/2|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
</style><!--/inline css-->
|
||||
{/literal}
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
var baseUri = "{$base_uri|escape:'htmlall':'UTF-8'}";
|
||||
var token = "{$token|escape:'htmlall':'UTF-8'}";
|
||||
var ajax_url = "{$ajax_link|escape:'htmlall':'UTF-8'}";
|
||||
var signup_ajax_url = "{$signup_ajax_link|escape:'htmlall':'UTF-8'}";
|
||||
var psNew = parseInt("{if $version ge '1.7'}1{else}0{/if}");
|
||||
|
||||
// load() event and resize() event are combined
|
||||
$(window).ready(responsiveFn).resize(responsiveFn);
|
||||
function SignUp()
|
||||
{
|
||||
$('#error_holder').html('');
|
||||
$('#private-login').hide();
|
||||
$('#new-private-account').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function Login()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').show();
|
||||
$('#new-private-account').hide();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function forgot_password()
|
||||
{
|
||||
$('#error_holder').html('');
|
||||
$('#private-login').hide();
|
||||
$('#private-lost-password').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function BackToLogin()
|
||||
{
|
||||
if (getUrlParameter('reset_token') !== '') {
|
||||
window.location.replace(baseUri);
|
||||
} else {
|
||||
$('.private_error_resp').html('').hide();
|
||||
$('#private-lost-password').hide();
|
||||
$('#private-login').fadeIn('slow');
|
||||
}
|
||||
}
|
||||
|
||||
function getUrlParameter(name)
|
||||
{
|
||||
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
|
||||
var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
|
||||
var results = regex.exec(location.search);
|
||||
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
|
||||
}
|
||||
|
||||
function responsiveFn()
|
||||
{
|
||||
width = $( window ).width();
|
||||
height = $( window ).height();
|
||||
|
||||
if(width <= 320) {
|
||||
$('#login_form').removeClass('box');
|
||||
}
|
||||
else {
|
||||
$('#login_form').addClass('box');
|
||||
}
|
||||
}
|
||||
|
||||
$(document).on('click', '#SubmitLogin', function(e){
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
|
||||
//var gif_loader = $('#gif_loader');
|
||||
//gif_loader.show();
|
||||
var jsonData = {
|
||||
type : "POST",
|
||||
cache : false,
|
||||
url : ajax_url,
|
||||
dataType : "json",
|
||||
data : {
|
||||
action : 'privateLogin',
|
||||
ajax : true,
|
||||
email : $.trim($('input[name=email]').val()),
|
||||
passwd : $.trim($('input[name=passwd]').val())
|
||||
},
|
||||
success: function(response) {
|
||||
if (response.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>'+response.html+'</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
//gif_loader.hide();
|
||||
} else if (response.success) {
|
||||
$('#error_holder').html('');
|
||||
//gif_loader.hide();
|
||||
window.location.reload();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
console.log(textStatus + '<br>' + errorThrown);
|
||||
//gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(jsonData);
|
||||
});
|
||||
|
||||
//function registerNewUser(el) {
|
||||
$(document).on('submit', '#create-account_form', function(e) {
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
|
||||
submitFunction();
|
||||
});
|
||||
|
||||
function submitFunction()
|
||||
{
|
||||
$('#error_holder').html('').hide();
|
||||
var jsonRequest = {
|
||||
type: 'POST',
|
||||
url: signup_ajax_url + '?rand=' + new Date().getTime(),
|
||||
async: true,
|
||||
cache: false,
|
||||
dataType : "json",
|
||||
headers: { "cache-control": "no-cache" },
|
||||
data:
|
||||
{
|
||||
SubmitCreate: 1,
|
||||
ajax: true,
|
||||
action: 'submitCreate',
|
||||
email: $('#email_create').val(),
|
||||
token: token
|
||||
},
|
||||
success: function(jsonData)
|
||||
{
|
||||
if (jsonData.hasError)
|
||||
{
|
||||
var errors = '';
|
||||
for(error in jsonData.errors)
|
||||
{
|
||||
//IE6 bug fix
|
||||
if (error != 'indexOf')
|
||||
{
|
||||
errors += '<li>' + jsonData.errors[error] + '</li>';
|
||||
}
|
||||
}
|
||||
$('#error_holder').html('<ol>' + errors + '</ol>').show();
|
||||
}
|
||||
else
|
||||
{
|
||||
// adding a div to display a transition
|
||||
$('#center_column').html('<div id="noSlide">' + $('#center_column').html() + '</div>');
|
||||
$('#noSlide').fadeOut('slow', function()
|
||||
{
|
||||
$('#noSlide').html(jsonData.page);
|
||||
$(this).fadeIn('slow', function()
|
||||
{
|
||||
if (typeof bindUniform !=='undefined')
|
||||
bindUniform();
|
||||
if (typeof bindStateInputAndUpdate !=='undefined')
|
||||
bindStateInputAndUpdate();
|
||||
document.location = '#account-creation';
|
||||
});
|
||||
});
|
||||
}
|
||||
},
|
||||
error: function(XMLHttpRequest, textStatus, errorThrown)
|
||||
{
|
||||
error = "TECHNICAL ERROR: unable to load form.\n\nDetails:\nError thrown: " + XMLHttpRequest + "\n" + 'Text status: ' + textStatus;
|
||||
if (!!$.prototype.fancybox)
|
||||
{
|
||||
$.fancybox.open([
|
||||
{
|
||||
type: 'inline',
|
||||
autoScale: true,
|
||||
minHeight: 30,
|
||||
content: "<p class='fancybox-error'>" + error + '</p>'
|
||||
}],
|
||||
{
|
||||
padding: 0
|
||||
});
|
||||
}
|
||||
else
|
||||
alert(error);
|
||||
}
|
||||
};
|
||||
$.ajax(jsonRequest);
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript">{literal}
|
||||
$(document).ready(function() {
|
||||
$('#wrapper').tubular({videoId: {/literal}'{$field_values.bg_video}'{literal}}); {*html content*}
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
{/if}
|
||||
{if $persist == 1 AND isset($persist)}
|
||||
<script type="text/javascript">{literal}
|
||||
$(document).ready(function() {
|
||||
forgot_password();
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
{if $persist == 2 AND isset($persist)}
|
||||
<script type="text/javascript">{literal}
|
||||
$(document).ready(function() {
|
||||
SignUp();
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
|
||||
|
||||
</head>
|
||||
<body{if $field_values.priv_form_theme == 'mod'} class="private_modern_theme"{/if} {if isset($field_values) AND $field_values.bg_type}{if $field_values.bg_type == "background-image" AND isset($field_values.bg_img)}id="bg-private-image"{elseif $field_values.bg_type == "background-video" AND isset($field_values.bg_video_img)}id="bg-private-image_video"{else if isset($field_values.bg_color) AND $field_values.bg_type == 'background-color'}id="bg-private-color"{/if}{/if}>
|
||||
<div id="wrapper"{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'} class="bg_opacity"{elseif $field_values.position == 'right'} class="bg_opacity"{/if} style="{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}float: left; margin-left:3%;{elseif $field_values.position == 'right'}float: right; margin-right:3%;{elseif $field_values.position == 'center'}margin:0 auto;{/if}" {if isset($field_values) AND $field_values.position == 'center'}class="center_align bg_opacity"{/if}>
|
||||
<div id="privatebox" class="privateshop_ps_lower">
|
||||
<div class="container bg_opacity_white">
|
||||
<p id="logo_basic"><img src="{$logo_url|escape:'htmlall':'UTF-8'}" alt="logo" /></p>{if $field_values.show_store_title > 0}<h1>{$shop_name|escape:'htmlall':'UTF-8'}</h1>{/if}
|
||||
<!-- <h2>{l s='Private Login' mod='privateshoplite'}</h2> -->
|
||||
<div id="center_column" class="private_login">
|
||||
{include file="$tpl_dir./errors.tpl"}
|
||||
<div id="error_holder"></div>
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<!-- create form -->
|
||||
<div id="new-private-account" style="display:none;">
|
||||
<form method="post" id="create-account_form" class="box" style="width:100%" enctype="multipart/form-data">
|
||||
<h2 class="private-subheading">{if isset($field_values) AND isset($field_values.signup_title) AND $field_values.signup_title}{$field_values.signup_title|escape:'htmlall':'UTF-8'}{else}{l s='Create a private account' mod='privateshoplite'}{/if}</h2>
|
||||
<div class="form_content clearfix">
|
||||
<div class="private_signup_table">
|
||||
<p>{l s='Please enter your email address to create an account.' mod='privateshoplite'}</p>
|
||||
{if isset($persist_restricted) && $persist_restricted > 0}
|
||||
{if empty($restrict_message)}
|
||||
<div class="alert alert-success">{l s='Your Account is created but pending validation for Email address:' mod='privateshoplite'} {if isset($smarty.post.email)}{$smarty.post.email|escape:'htmlall':'UTF-8'}{/if}</div>
|
||||
{else}
|
||||
<div class="alert alert-success">
|
||||
{l s='Email address:' mod='privateshoplite'} {if isset($smarty.post.email)}{$smarty.post.email}{/if}<br />{$restrict_message} {*html content*}
|
||||
</div>
|
||||
{/if}
|
||||
{/if}
|
||||
<div class="alert alert-danger error private_error_resp" id="create_account_error" style="display:none"></div>
|
||||
<div class="form-group">
|
||||
<label for="email_create" class="pshop_fields_row_hide">{l s='Email address' mod='privateshoplite'}</label>
|
||||
<input type="text" placeholder="{l s='Email address' mod='privateshoplite'}" class="is_required validate account_input form-control form-group" data-validate="isEmail" id="email_create" name="email_create" value="{if isset($smarty.post.email)}{$smarty.post.email|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
<div class="submit">
|
||||
{if isset($back)}<input type="hidden" class="hidden" name="back" value="{$back|escape:'htmlall':'UTF-8'}" />{/if}
|
||||
{if $version >= 1.6}
|
||||
<button class="btn btn-default button button-medium exclusive" type="submit" id="SubmitCreate" name="SubmitCreate">
|
||||
<span>
|
||||
{l s='Create account' mod='privateshoplite'}
|
||||
</span>
|
||||
</button>
|
||||
{else}
|
||||
<input type="button" id="SubmitCreate" name="SubmitCreate" class="button_large" value="{l s='Create your account' mod='privateshoplite'}" />
|
||||
{/if}
|
||||
<input type="hidden" class="hidden" name="SubmitCreate" value="{l s='Create an account' mod='privateshoplite'}"/>
|
||||
<button class="btn btn-default button button-medium pull-right" type="button" rel="nofollow" title="{l s='Already registered?' mod='privateshoplite'}" href="javascript:;" onclick="Login();" style="{if $version >= 1.6}color:#fff;{else}color:#555;{/if}">
|
||||
<span>{l s='Already registered?' mod='privateshoplite'}</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
</div> <!-- /create form ends-->
|
||||
{/if}
|
||||
<!-- login form -->
|
||||
<div id="private-login">
|
||||
<form action="{$link->getPageLink('authentication', true)|escape:'htmlall':'UTF-8'}" method="post" id="login_form" class="box">
|
||||
<h2 class="private-subheading">{if isset($field_values) AND isset($field_values.login_title) AND $field_values.login_title}{$field_values.login_title|escape:'htmlall':'UTF-8'}{else}{l s='Private Login' mod='privateshoplite'}{/if}</h2>
|
||||
<div class="form_content clearfix">
|
||||
<table class="private_login_table">
|
||||
<tr>
|
||||
<div class="form-group">
|
||||
<td class="pshop_fields_row_hide"><label for="email">{l s='Email address' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Email address' mod='privateshoplite'}" class="is_required validate account_input form-control form-group" data-validate="isEmail" type="text" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td><td> </td></tr>
|
||||
<tr>
|
||||
<div class="form-group">
|
||||
<td class="pshop_fields_row_hide"><label for="passwd">{l s='Password' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Password' mod='privateshoplite'}" class="is_required validate account_input form-control form-group" type="password" data-validate="isPasswd" id="passwd" name="passwd" value="{if isset($smarty.post.passwd)}{$smarty.post.passwd|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td></tr>
|
||||
</table>
|
||||
<ul id="pshop_bottom_footer">
|
||||
<li><p class="lost_password form-group"><a id="lost-password" href="javascript:;" title="{l s='Recover your forgotten password' mod='privateshoplite'}" rel="nofollow" onclick="forgot_password()">{l s='Forgot your password?' mod='privateshoplite'}</a></p></li>
|
||||
{if isset($back)}<input type="hidden" class="hidden" name="back" value="{$back|escape:'htmlall':'UTF-8'}" />{/if}
|
||||
<li class="submit">
|
||||
{if $version >= 1.6}
|
||||
<button type="submit" id="SubmitLogin" name="SubmitLogin" class="button btn btn-default button-medium">
|
||||
<span>
|
||||
{l s='Sign in' mod='privateshoplite'}
|
||||
</span>
|
||||
</button>
|
||||
{else}
|
||||
<input type="submit" id="SubmitLogin" name="SubmitLogin" class="button" value="{l s='Log in' mod='privateshoplite'}" />
|
||||
{/if}
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<a class="btn btn-default button button-medium exclusive" type="submit" id="register" name="register" onclick="SignUp();">
|
||||
<span>
|
||||
{l s='Sign Up' mod='privateshoplite'}
|
||||
</span>
|
||||
</a>
|
||||
{/if}
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</form>
|
||||
</div> <!-- /login form ends -->
|
||||
<div id="private-lost-password" style="display:none;">{include file="./password.tpl"}</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
{strip}
|
||||
{if isset($smarty.post.id_state) && $smarty.post.id_state}
|
||||
{addJsDef idSelectedState=$smarty.post.id_state|intval}
|
||||
{elseif isset($address->id_state) && $address->id_state}
|
||||
{addJsDef idSelectedState=$address->id_state|intval}
|
||||
{else}
|
||||
{addJsDef idSelectedState=false}
|
||||
{/if}
|
||||
{if isset($smarty.post.id_state_invoice) && isset($smarty.post.id_state_invoice) && $smarty.post.id_state_invoice}
|
||||
{addJsDef idSelectedStateInvoice=$smarty.post.id_state_invoice|intval}
|
||||
{else}
|
||||
{addJsDef idSelectedStateInvoice=false}
|
||||
{/if}
|
||||
{if isset($smarty.post.id_country) && $smarty.post.id_country}
|
||||
{addJsDef idSelectedCountry=$smarty.post.id_country|intval}
|
||||
{elseif isset($address->id_country) && $address->id_country}
|
||||
{addJsDef idSelectedCountry=$address->id_country|intval}
|
||||
{else}
|
||||
{addJsDef idSelectedCountry=false}
|
||||
{/if}
|
||||
{if isset($smarty.post.id_country_invoice) && isset($smarty.post.id_country_invoice) && $smarty.post.id_country_invoice}
|
||||
{addJsDef idSelectedCountryInvoice=$smarty.post.id_country_invoice|intval}
|
||||
{else}
|
||||
{addJsDef idSelectedCountryInvoice=false}
|
||||
{/if}
|
||||
{if isset($countries)}
|
||||
{addJsDef countries=$countries}
|
||||
{/if}
|
||||
{if isset($vatnumber_ajax_call) && $vatnumber_ajax_call}
|
||||
{addJsDef vatnumber_ajax_call=$vatnumber_ajax_call}
|
||||
{/if}
|
||||
{if isset($email_create) && $email_create}
|
||||
{addJsDef email_create=$email_create|boolval}
|
||||
{else}
|
||||
{addJsDef email_create=false}
|
||||
{/if}
|
||||
{/strip}
|
||||
{strip}
|
||||
{addJsDef isMobile=$mobile_device}
|
||||
{addJsDef baseDir=$content_dir}
|
||||
{addJsDef baseUri=$base_uri}
|
||||
{addJsDef static_token=$static_token}
|
||||
{addJsDef token=$token|htmlentities:$smarty.const.ENT_QUOTES}
|
||||
{addJsDef priceDisplayPrecision=$priceDisplayPrecision*$currency->decimals}
|
||||
{addJsDef priceDisplayMethod=$priceDisplay}
|
||||
{addJsDef roundMode=$roundMode}
|
||||
{addJsDef currency=$currency}
|
||||
{addJsDef currencyRate=$currencyRate|floatval}
|
||||
{addJsDef currencySign=$currency->sign|html_entity_decode:2:"UTF-8"}
|
||||
{addJsDef currencyFormat=$currency->format|intval}
|
||||
{addJsDef currencyBlank=$currency->blank|intval}
|
||||
{addJsDef isLogged=$is_logged|intval}
|
||||
{addJsDef isGuest=$is_guest|intval}
|
||||
{addJsDef page_name=$page_name|escape:'html':'UTF-8'}
|
||||
{addJsDef contentOnly=$content_only|boolval}
|
||||
{if isset($cookie->id_lang)}
|
||||
{addJsDef id_lang=$cookie->id_lang|intval}
|
||||
{/if}
|
||||
{addJsDefL name=FancyboxI18nClose}{l s='Close' mod='privateshoplite'}{/addJsDefL}
|
||||
{addJsDefL name=FancyboxI18nNext}{l s='Next' mod='privateshoplite'}{/addJsDefL}
|
||||
{addJsDefL name=FancyboxI18nPrev}{l s='Previous' mod='privateshoplite'}{/addJsDefL}
|
||||
{addJsDef usingSecureMode=Tools::usingSecureMode()|boolval}
|
||||
{addJsDef ajaxsearch=Configuration::get('PS_SEARCH_AJAX')|boolval}
|
||||
{addJsDef instantsearch=Configuration::get('PS_INSTANT_SEARCH')|boolval}
|
||||
{addJsDef quickView=$quick_view|boolval}
|
||||
{addJsDef displayList=Configuration::get('PS_GRID_PRODUCT')|boolval}
|
||||
{addJsDef highDPI=Configuration::get('PS_HIGHT_DPI')|boolval}
|
||||
{/strip}
|
||||
@@ -0,0 +1,670 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
*}
|
||||
|
||||
<!DOCTYPE HTML>
|
||||
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8 ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js lt-ie9 ie8" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if gt IE 8]> <html class="no-js ie9" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<html lang="{$language_code|escape:'htmlall':'UTF-8'}">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>{$meta_title|escape:'htmlall':'UTF-8'}</title>
|
||||
{if isset($meta_description)}
|
||||
<meta name="description" content="{$meta_description|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
{if isset($meta_keywords)}
|
||||
<meta name="keywords" content="{$meta_keywords|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
<meta name="generator" content="PrestaShop" />
|
||||
<meta name="robots" content="{if isset($nobots)}no{/if}index,{if isset($nofollow) && $nofollow}no{/if}follow" />
|
||||
<meta name="viewport" content="width=device-width, minimum-scale=0.25, maximum-scale=1.6, initial-scale=1.0" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
{if isset($js_files) && $js_files}
|
||||
{foreach from=$js_files item=js_uri}
|
||||
<script type="text/javascript" src="{$js_uri|escape:'htmlall':'UTF-8'}"></script>
|
||||
{/foreach}
|
||||
{/if}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/validate.js"></script>
|
||||
{if $version >= 1.6}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/authentication16.js"></script>
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/authentication16.css" type="text/css" media="all" charset="utf-8" />
|
||||
{else}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/authentication15.js"></script>
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/authentication15.css" type="text/css" media="all" charset="utf-8" />
|
||||
{/if}
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/jquery.tubular.1.0.js"></script>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
<link rel="shortcut icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/private.css" type="text/css" charset="utf-8" />
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}theme.css" type="text/css" media="all" charset="utf-8" />
|
||||
|
||||
{literal}
|
||||
<!-- inline css -->
|
||||
<style type="text/css">
|
||||
body
|
||||
{
|
||||
height: 100% !important;
|
||||
margin: 0;
|
||||
background: rgba(77,117,219,1);
|
||||
background: -moz-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -webkit-gradient(left top, right top, color-stop(0%, rgba(77,117,219,1)), color-stop(55%, rgba(120,155,227,1)), color-stop(100%, rgba(120,155,227,1)));
|
||||
background: -webkit-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -o-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: linear-gradient(to right, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d75db', endColorstr='#789be3', GradientType=1 );
|
||||
}
|
||||
#bg-private-image{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/{$field_values.bg_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#bg-private-image_video{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
body#bg-private-color{
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
background: {/literal}{$field_values.bg_color|escape:'htmlall':'UTF-8'}{literal};
|
||||
}
|
||||
.bg_opacity {
|
||||
background:rgb(241,241,241,{/literal}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
.bg_opacity_white {
|
||||
background:rgb(255,255,255,{/literal}{$field_values.bg_opacity/2|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
#gif_loader { background-color: rgba(255,255,255,0.5);
|
||||
position: absolute; left: 0; top: 0; width: 100%; height: 101%; z-index: 9;
|
||||
background-image:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/load.gif"{literal});
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
}
|
||||
#new-private-account { position: relative}
|
||||
.date-select > label { margin-left: 15px!important;}
|
||||
.show_comment { display: inline-block!important; }
|
||||
</style><!--/inline css-->
|
||||
{/literal}
|
||||
<script type="text/javascript">
|
||||
//<![CDATA[
|
||||
var baseUri = "{$base_uri|escape:'htmlall':'UTF-8'}";
|
||||
var token = "{$token|escape:'htmlall':'UTF-8'}";
|
||||
var ajax_url = "{$ajax_link|escape:'htmlall':'UTF-8'}";
|
||||
var psNew = parseInt("{if $version ge '1.7'}1{else}0{/if}");
|
||||
{literal}
|
||||
// load() event and resize() event are combined
|
||||
$(window).ready(responsiveFn).resize(responsiveFn);
|
||||
function SignUp()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').hide();
|
||||
$('#new-private-account').show();
|
||||
$('#private-contact-form').hide();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
function ContactForm()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').hide();
|
||||
$('#private-contact-form').show();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function Login()
|
||||
{
|
||||
$('.alert-danger, .error').hide();
|
||||
$('#private-login').show();
|
||||
$('#private-contact-form').hide();
|
||||
$('#new-private-account').hide();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function forgot_password()
|
||||
{
|
||||
//$('#ps17_errors').html('').hide();
|
||||
$('#private-login').hide();
|
||||
$('#private-lost-password').show();
|
||||
$('#private-contact-form').hide();
|
||||
$('.alert').addClass('private_error_resp');
|
||||
}
|
||||
|
||||
function BackToLogin()
|
||||
{
|
||||
if (typeof baseUri === 'undefined') {
|
||||
baseUri = prestashop.urls.base_url;
|
||||
}
|
||||
|
||||
if (getUrlParameter('reset_token') !== '') {
|
||||
window.location.replace(baseUri);
|
||||
} else {
|
||||
$('.private_error_resp').html('').hide();
|
||||
$('#private-lost-password').hide();
|
||||
$('#private-contact-form').hide();
|
||||
$('#private-login').fadeIn('slow');
|
||||
}
|
||||
}
|
||||
|
||||
function getUrlParameter(name)
|
||||
{
|
||||
name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]');
|
||||
var regex = new RegExp('[\\?&]' + name + '=([^&#]*)');
|
||||
var results = regex.exec(location.search);
|
||||
return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' '));
|
||||
}
|
||||
|
||||
function responsiveFn()
|
||||
{
|
||||
width = $( window ).width();
|
||||
height = $( window ).height();
|
||||
|
||||
if(width <= 320) {
|
||||
$('#login_form').removeClass('box');
|
||||
}
|
||||
else {
|
||||
$('#login_form').addClass('box');
|
||||
}
|
||||
}
|
||||
function toggleVis(e) {
|
||||
var elm = $(e).closest('.input-group').find('input.js-visible-password');
|
||||
|
||||
if (elm.attr('type') === 'password') {
|
||||
elm.attr('type', 'text');
|
||||
$(e).text($(e).data('text-hide'));
|
||||
} else {
|
||||
elm.attr('type', 'password');
|
||||
$(e).text($(e).data('text-show'));
|
||||
}
|
||||
}
|
||||
|
||||
function sendMessage(el) {
|
||||
var gif_loader = $('#gif_loader');
|
||||
gif_loader.show();
|
||||
var form_data = $('#private-contact_form form').serialize();
|
||||
var formData = new FormData($(el).closest('form').get(0));
|
||||
formData.append('action', 'sendMessage');
|
||||
var requestData = {
|
||||
type : 'POST',
|
||||
url : ajax_url,
|
||||
dataType : 'json',
|
||||
data : formData,
|
||||
contentType : false,
|
||||
cache : false,
|
||||
processData : false,
|
||||
success: function(jsonData) {
|
||||
if (jsonData.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>' + jsonData.html + '</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
gif_loader.hide();
|
||||
} else {
|
||||
$('#error_holder').html('');
|
||||
if (jsonData.redirect === true) {
|
||||
window.location = jsonData.redirect_url;
|
||||
} else {
|
||||
$('#new-private-account').html(jsonData.message);
|
||||
}
|
||||
|
||||
$('#privateshoplite_pending_message').html('You message request has been sent');
|
||||
$('#customer_message_email').val('');
|
||||
$('#customer_message_subject').val('');
|
||||
$('#customer_message_message').val('');
|
||||
$('#default_back').hide();
|
||||
$('#private-back').show();
|
||||
|
||||
gif_loader.hide();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(requestData);
|
||||
}
|
||||
function registerNewUser(el) {
|
||||
var gif_loader = $('#gif_loader');
|
||||
gif_loader.show();
|
||||
var form_data = $('#new-private-account form').serialize();
|
||||
var formData = new FormData($(el).closest('form').get(0));
|
||||
var requestData = {
|
||||
type : 'POST',
|
||||
url : ajax_url,
|
||||
dataType : 'json',
|
||||
data : formData,
|
||||
contentType : false,
|
||||
cache : false,
|
||||
processData : false,
|
||||
success: function(jsonData) {
|
||||
if (jsonData.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>' + jsonData.html + '</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
gif_loader.hide();
|
||||
} else {
|
||||
$('#error_holder').html('');
|
||||
if (jsonData.redirect === true) {
|
||||
window.location = jsonData.redirect_url;
|
||||
} else {
|
||||
$('#new-private-account').html(jsonData.message);
|
||||
}
|
||||
|
||||
$('#private-back').show();
|
||||
gif_loader.hide();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(requestData);
|
||||
}
|
||||
|
||||
$(document).on('click', '#SubmitLogin', function(e){
|
||||
e.preventDefault();
|
||||
e.stopImmediatePropagation();
|
||||
//var gif_loader = $('#gif_loader');
|
||||
//gif_loader.show();
|
||||
var jsonData = {
|
||||
type : "POST",
|
||||
cache : false,
|
||||
url : ajax_url,
|
||||
dataType : "json",
|
||||
data : {
|
||||
action : 'privateLogin',
|
||||
ajax : true,
|
||||
email : $.trim($('input[name=email]').val()),
|
||||
passwd : $.trim($('input[name=passwd]').val())
|
||||
},
|
||||
success: function(response) {
|
||||
if (response.errors > 0) {
|
||||
var __html = '<div class="alert alert-danger" id="ps17_errors"><ol><li>'+response.html+'</li></ol></div>';
|
||||
$('#error_holder').html(__html);
|
||||
//gif_loader.hide();
|
||||
} else if (response.success) {
|
||||
$('#error_holder').html('');
|
||||
//gif_loader.hide();
|
||||
window.location.reload();
|
||||
}
|
||||
},
|
||||
error : function(XMLHttpRequest, textStatus, errorThrown) {
|
||||
console.log(textStatus + '<br>' + errorThrown);
|
||||
//gif_loader.hide();
|
||||
}
|
||||
};
|
||||
$.ajax(jsonData);
|
||||
});
|
||||
{/literal}
|
||||
//]]>
|
||||
</script>
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript">
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
setBGvideo('{$field_values.bg_video}'); //html content
|
||||
});
|
||||
</script>
|
||||
{/if}
|
||||
{/if}
|
||||
{if $persist == 1 AND isset($persist)}
|
||||
<script type="text/javascript">{literal}
|
||||
$(document).ready(function() {
|
||||
forgot_password();
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
|
||||
</head>
|
||||
<body {if $field_values.priv_form_theme == 'mod'}class="private_modern_theme"{/if} {if isset($field_values) AND $field_values.bg_type}{if $field_values.bg_type == "background-image" AND isset($field_values.bg_img)}id="bg-private-image"{elseif $field_values.bg_type == "background-video" AND isset($field_values.bg_video_img)}id="bg-private-image_video"{else if isset($field_values.bg_color) AND $field_values.bg_type == 'background-color'}id="bg-private-color"{/if}{/if}>
|
||||
<div id="wrapper"{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'} class="bg_opacity"{elseif $field_values.position == 'right'} class="bg_opacity"{/if} style="{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}float: left; margin-left:3%;{elseif $field_values.position == 'right'}float: right; margin-right:3%;{elseif $field_values.position == 'center'}margin:0 auto;{/if}" {if isset($field_values) AND $field_values.position == 'center'}class="center_align bg_opacity"{/if}>
|
||||
<div id="privatebox">
|
||||
<div class="container bg_opacity_white" id="fmm_ps17">
|
||||
<p id="logo_basic"><img src="{if isset($field_values.custom_logo) && $field_values.custom_logo > 0}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.custom_logo_img|escape:'htmlall':'UTF-8'}{else}{$logo_url|escape:'htmlall':'UTF-8'}{/if}" alt="logo" /></p>{if $field_values.show_store_title > 0}<h1 class="pshop_title_shop">{$shop_name|escape:'htmlall':'UTF-8'}</h1>{/if}
|
||||
<!-- <h2>{l s='Private Login' mod='privateshoplite'}</h2> -->
|
||||
<div id="center_column" class="private_login">
|
||||
{include file="module:privateshoplite/views/templates/front/errors.tpl"}
|
||||
<div id="error_holder"></div>
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<!-- create form -->
|
||||
<div id="new-private-account" style="display:none;">
|
||||
<form method="post" class="js-customer-form" id="customer-form" enctype="multipart/form-data">
|
||||
<section>
|
||||
<input type="hidden" value="" name="id_customer">
|
||||
{if isset($field_values.gender_opt) && $field_values.gender_opt <= 0}
|
||||
<div class="form-group row social_title">
|
||||
<label class="col-md-3 form-control-label">
|
||||
{l s='Social title' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6 form-control-valign">
|
||||
<label class="radio-inline">
|
||||
<span class="custom-radio">
|
||||
<input type="radio" value="1" name="id_gender">
|
||||
<span></span>
|
||||
</span>
|
||||
{l s='Mr.' mod='privateshoplite'}
|
||||
</label>
|
||||
<label class="radio-inline">
|
||||
<span class="custom-radio">
|
||||
<input type="radio" value="2" name="id_gender">
|
||||
<span></span>
|
||||
</span>
|
||||
{l s='Mrs.' mod='privateshoplite'}
|
||||
</label>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='First name' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" placeholder="{l s='First name' mod='privateshoplite'}" required="" value="" name="firstname" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Last name' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" required="" placeholder="{l s='Last name' mod='privateshoplite'}" value="" name="lastname" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Email' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<input type="email" required="" placeholder="{l s='Email' mod='privateshoplite'}" value="" name="email_account" class="form-control">
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label required">
|
||||
{l s='Password' mod='privateshoplite'}
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<div class="input-group js-parent-focus">
|
||||
<input type="password" required="" value="" placeholder="{l s='Password' mod='privateshoplite'}" name="password" class="form-control js-child-focus js-visible-password">
|
||||
<span class="input-group-btn pshop_show_hide">
|
||||
<button data-text-hide="{l s='Hide' mod='privateshoplite'}" onclick="toggleVis(this);" data-text-show="{l s='Show' mod='privateshoplite'}" data-action="show-password" type="button" class="btn">
|
||||
{l s='Show' mod='privateshoplite'}
|
||||
</button>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{if isset($field_values.bday) && $field_values.bday <= 0}
|
||||
<div class="form-group row ">
|
||||
<div class="birth-date-select">
|
||||
<label class="col-lg-3" style='padding:1%;'>{l s='Birthday' mod='privateshoplite'}</label>
|
||||
<div class="col-lg-6" style="display: flex;gap: 2px;">
|
||||
<div style="width: 35%;">
|
||||
<select id="days" name="days" class="form-control">
|
||||
<option value="">{l s='dd' mod='privateshoplite'}</option>
|
||||
{foreach from=$days item=day}
|
||||
<option value="{$day|escape:'htmlall':'UTF-8'}" {if ($sl_day == $day)} selected="selected"{/if}>{$day|escape:'htmlall':'UTF-8'} </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div style="width: 35%;">
|
||||
<select id="months" name="months" class="form-control">
|
||||
<option value="">{l s='mm' mod='privateshoplite'}</option>
|
||||
{foreach from=$months key=k item=month}
|
||||
<option value="{$k|escape:'htmlall':'UTF-8'}" {if ($sl_month == $k)} selected="selected"{/if}>{l s=$month|escape:'htmlall':'UTF-8' mod='privateshoplite' } </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div style="width: 35%;">
|
||||
<select id="years" name="years" class="form-control">
|
||||
<option value="">{l s='yyyy' mod='privateshoplite'}</option>
|
||||
{foreach from=$years item=year}
|
||||
<option value="{$year|escape:'htmlall':'UTF-8'}" {if ($sl_year == $year)} selected="selected"{/if}>{$year|escape:'htmlall':'UTF-8'} </option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div><br>
|
||||
<div class="col-md-3 form-control-comment show_comment">
|
||||
{l s='Optional' mod='privateshoplite'}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{if isset($field_values.offers_opt) && $field_values.offers_opt <= 0}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label">
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<span class="custom-checkbox">
|
||||
<input type="checkbox" value="1" name="optin">
|
||||
<span><i class="material-icons checkbox-checked"></i></span>
|
||||
<label>{l s='Receive offers from our partners' mod='privateshoplite'}</label>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{if isset($field_values.nletter_opt) && $field_values.nletter_opt <= 0}
|
||||
<div class="form-group row ">
|
||||
<label class="col-md-3 form-control-label">
|
||||
</label>
|
||||
<div class="col-md-6">
|
||||
<span class="custom-checkbox">
|
||||
<input type="checkbox" value="1" name="newsletter">
|
||||
<span><i class="material-icons checkbox-checked"></i></span>
|
||||
<label>{l s='Sign up for our newsletter' mod='privateshoplite'}<br><em></em></label>
|
||||
</span>
|
||||
</div>
|
||||
<div class="col-md-3 form-control-comment">
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
{$hook_create_account_form nofilter}
|
||||
</section>
|
||||
<footer class="form-footer clearfix">
|
||||
<input type="hidden" value="1" name="submitCreate">
|
||||
<button type="button" data-link-action="save-customer" onclick="registerNewUser(this);" class="btn btn-primary form-control-submit pull-xs-right">
|
||||
{l s='Save' mod='privateshoplite'}
|
||||
</button>
|
||||
<a href="javascript:void(0);" onclick="Login();">
|
||||
<span>{l s='Log in instead!' mod='privateshoplite'}</span>
|
||||
</a>
|
||||
</footer>
|
||||
</form>
|
||||
<div class="clearfix"></div>
|
||||
<div id="gif_loader" style="display: none"></div>
|
||||
</div> <!-- /create form ends-->
|
||||
{/if}
|
||||
<!-- login form -->
|
||||
<div id="private-login">
|
||||
<form action="{$link->getPageLink('authentication', true)|escape:'htmlall':'UTF-8'}" method="post" id="login_form" class="box">
|
||||
<h2 class="private-subheading">Logowanie do panelu B2B<br>Login to B2B panel</h2>
|
||||
<div class="form_content clearfix">
|
||||
<table class="private_login_table">
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="email">{l s='Email address' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="Adres email (Email address)" class="is_required validate account_input form-control" data-validate="isEmail" type="text" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td><td> </td></tr>
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="passwd">{l s='Password' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="Hasło (Password)" class="is_required validate account_input form-control" type="password" data-validate="isPasswd" id="passwd" name="passwd" value="{if isset($smarty.post.passwd)}{$smarty.post.passwd|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td></tr>
|
||||
</table>
|
||||
<ul id="pshop_bottom_footer">
|
||||
<li class="submit">
|
||||
{if isset($back)}<input type="hidden" class="hidden" name="back" value="{$back|escape:'htmlall':'UTF-8'}" />{/if}
|
||||
|
||||
<div class='private-login-footer-button'>
|
||||
{if $version >= 1.6}
|
||||
<button type="submit" id="SubmitLogin" name="SubmitLogin" class="button btn btn-default button-medium">
|
||||
<span>
|
||||
<i class="icon-lock left"></i>
|
||||
Zaloguj się (Sign in)
|
||||
</span>
|
||||
</button>
|
||||
{else}
|
||||
<input type="submit" id="SubmitLogin" name="SubmitLogin" class="button" value="{l s='Log in' mod='privateshoplite'}"/>
|
||||
|
||||
{/if}
|
||||
</div>
|
||||
<div class='private-login-footer-button'>
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<a class="btn btn-default button button-medium exclusive" type="submit" id="register" name="register" onclick="SignUp();">
|
||||
<span>
|
||||
Zarejestruj się (Sign Up)
|
||||
</span>
|
||||
</a>
|
||||
{/if}
|
||||
</div>
|
||||
|
||||
</li>
|
||||
<li><p class="lost_password form-group"><a id="lost-password" href="javascript:;" title="{l s='Recover your forgotten password' mod='privateshoplite'}" rel="nofollow" onclick="forgot_password()">Zapomniałeś hasła? (Forgot your password?)</a></p></li>
|
||||
</ul>
|
||||
</div>
|
||||
</form>
|
||||
</div> <!-- /Contact form ends -->
|
||||
<div id="private-contact-form" style="display:none;">
|
||||
<form action="{$link->getPageLink('authentication', true)|escape:'htmlall':'UTF-8'}" method="post" id="privateshoplite_customer_contact_form" class="box">
|
||||
<h2 class="private-subheading">{l s='Contact Us' mod='privateshoplite'}</h2>
|
||||
<div class="form_content clearfix">
|
||||
<table class="private_login_table">
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="email">{l s='Email address' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Email address' mod='privateshoplite'}" id='customer_message_email' class="is_required validate account_input form-control" data-validate="isEmail" type="text" id="email" name="email" value="{if isset($smarty.post.email)}{$smarty.post.email|stripslashes|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td><td> </td></tr>
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="subject">{l s='Subject' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Subject' mod='privateshoplite'}" id='customer_message_subject'class="account_input form-control" type="text" id="subject" name="subject" value="{if isset($smarty.post.subject)}{$smarty.post.subject|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td></tr>
|
||||
<tr class="pshop_fields_row">
|
||||
<div class="form-group">
|
||||
<td><label for="subject">{l s='Subject' mod='privateshoplite'}</label></td>
|
||||
<td colspan="3"><input placeholder="{l s='Message' mod='privateshoplite'}" id='customer_message_message' class="account_input form-control" type="textarea" id="message" name="message" value="{if isset($smarty.post.message)}{$smarty.post.message|escape:'htmlall':'UTF-8'}{/if}" /></td>
|
||||
</div>
|
||||
</tr>
|
||||
<tr class="exttra_row"><td> </td><td> </td></tr>
|
||||
</table>
|
||||
<ul id="pshop_bottom_footer">
|
||||
<li class="submit">
|
||||
{if isset($back)}<input type="hidden" class="hidden" name="back" value="{$back|escape:'htmlall':'UTF-8'}" />{/if}
|
||||
|
||||
<div>
|
||||
{if $version >= 1.6}
|
||||
<button type="button" class="button btn btn-default button-medium" onclick="Login();">
|
||||
<span>
|
||||
<i class="icon-lock left"></i>
|
||||
{l s='Sign in' mod='privateshoplite'}
|
||||
</span>
|
||||
</button>
|
||||
{else}
|
||||
{* <input type="button" class="button" value="{l s='Log in' mod='privateshoplite'}" onclick="Login();"/> *}
|
||||
|
||||
{/if}
|
||||
</div>
|
||||
<div>
|
||||
{if isset($field_values) AND isset($field_values.active_signup) AND $field_values.active_signup == 1}
|
||||
<a class="btn btn-default button button-medium exclusive" type="submit" id="register" name="register" onclick="SignUp();">
|
||||
<span>
|
||||
{l s='Sign Up' mod='privateshoplite'}
|
||||
</span>
|
||||
</a>
|
||||
{/if}
|
||||
</div>
|
||||
<div>
|
||||
<a name='SubmitContactForm' id='SubmitContactForm' class="btn btn-primary" onclick="sendMessage(this);">
|
||||
<span>
|
||||
{l s='Send' mod='privateshoplite'}
|
||||
</span>
|
||||
<a>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</form>
|
||||
</div> <!-- /login form ends -->
|
||||
<div id="private-lost-password" style="display:none;">{include file="module:privateshoplite/views/templates/front/password_17.tpl"}</div>
|
||||
</div>
|
||||
<div id="private-back" class="col-lg-12" style="display:none;">
|
||||
<p class="alert alert-info info" id='privateshoplite_pending_message'>{l s='Your account is under review. Your will receive confirmation email soon.' mod='privateshoplite'}</p>
|
||||
<button id="default_back" onclick="window.location.reload();" class="btn btn-default col-lg-12">{l s='Back' mod='privateshoplite'}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div><div class="clearfix"></div>
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/jquery.tubular.1.0.js"></script>
|
||||
{/if}
|
||||
{/if}
|
||||
</body>
|
||||
</html>
|
||||
<style>
|
||||
.private-login-footer-button {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
</style>
|
||||
|
||||
<script>
|
||||
function setBGvideo(value) {
|
||||
var wrapper = (psNew) ? '#wrapper' : '#center_column';
|
||||
if (wrapper === '#wrapper') {
|
||||
// $(wrapper).addClass('center_align bg_opacity');
|
||||
$(wrapper).css({
|
||||
'background': 'transparent'
|
||||
});
|
||||
}
|
||||
|
||||
$(wrapper).tubular({
|
||||
videoId: value,
|
||||
onError: function() {
|
||||
console.error('Error setting background video');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
125
modules/privateshoplite/views/templates/front/restricted.tpl
Normal file
@@ -0,0 +1,125 @@
|
||||
{*
|
||||
* PrivateShop
|
||||
*
|
||||
* Do not edit or add to this file.
|
||||
* You are not authorized to modify, copy or redistribute this file.
|
||||
* Permissions are reserved by FME Modules.
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 FME Modules All right reserved
|
||||
* @license FME Modules
|
||||
* @category FMM Modules
|
||||
* @package PrivateShop
|
||||
*}
|
||||
<!DOCTYPE HTML>
|
||||
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 7]><html class="no-js lt-ie9 lt-ie8 ie7" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if IE 8]><html class="no-js lt-ie9 ie8" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<!--[if gt IE 8]> <html class="no-js ie9" lang="{$language_code|escape:'htmlall':'UTF-8'}"><![endif]-->
|
||||
<html lang="{$language_code|escape:'htmlall':'UTF-8'}">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>{$meta_title|escape:'htmlall':'UTF-8'}</title>
|
||||
{if isset($meta_description)}
|
||||
<meta name="description" content="{$meta_description|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
{if isset($meta_keywords)}
|
||||
<meta name="keywords" content="{$meta_keywords|escape:'htmlall':'UTF-8'}" />
|
||||
{/if}
|
||||
<meta name="generator" content="PrestaShop" />
|
||||
<meta name="robots" content="{if isset($nobots)}no{/if}index,{if isset($nofollow) && $nofollow}no{/if}follow" />
|
||||
<meta name="viewport" content="width=device-width, minimum-scale=0.25, maximum-scale=1.6, initial-scale=1.0" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes" />
|
||||
<link rel="icon" type="image/vnd.microsoft.icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="shortcut icon" type="image/x-icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}?{$img_update_time|escape:'htmlall':'UTF-8'}" />
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript" src="{$base_uri|escape:'htmlall':'UTF-8'}js/jquery/jquery-1.11.0.min.js"></script>
|
||||
<script type="text/javascript" src="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/js/jquery.tubular.1.0.js"></script>
|
||||
{/if}
|
||||
{/if}
|
||||
<link rel="shortcut icon" href="{$favicon_url|escape:'htmlall':'UTF-8'}" />
|
||||
<link rel="stylesheet" href="{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/css/private.css" type="text/css" charset="utf-8" />
|
||||
{if $version > 0}
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}custom.css" type="text/css" media="all" charset="utf-8" />
|
||||
<link rel="stylesheet" href="{$css_dir|escape:'htmlall':'UTF-8'}theme.css" type="text/css" media="all" charset="utf-8" />
|
||||
{/if}
|
||||
{literal}
|
||||
<!-- inline css -->
|
||||
<style type="text/css">
|
||||
html { padding: 0px;}
|
||||
body
|
||||
{
|
||||
height: 100% !important;
|
||||
margin: 0;
|
||||
background: rgba(77,117,219,1);
|
||||
background: -moz-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -webkit-gradient(left top, right top, color-stop(0%, rgba(77,117,219,1)), color-stop(55%, rgba(120,155,227,1)), color-stop(100%, rgba(120,155,227,1)));
|
||||
background: -webkit-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -o-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: -ms-linear-gradient(left, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
background: linear-gradient(to right, rgba(77,117,219,1) 0%, rgba(120,155,227,1) 55%, rgba(120,155,227,1) 100%);
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d75db', endColorstr='#789be3', GradientType=1 );
|
||||
}
|
||||
#bg-private-image{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/{$field_values.bg_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#bg-private-image_video{
|
||||
background:url("{/literal}{$modules_dir|escape:'htmlall':'UTF-8'}privateshoplite/views/img/private/tmp/{$field_values.bg_video_img|escape:'htmlall':'UTF-8'}{literal}") no-repeat center center fixed;
|
||||
-webkit-background-size: cover;
|
||||
-moz-background-size: cover;
|
||||
-o-background-size: cover;
|
||||
background-size: cover;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
body#bg-private-color{
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
background: {/literal}{$field_values.bg_color|escape:'htmlall':'UTF-8'}{literal};
|
||||
}
|
||||
.bg_opacity {
|
||||
background:rgb(241,241,241,{/literal}{$field_values.bg_opacity|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
.bg_opacity_white {
|
||||
background:rgb(255,255,255,{/literal}{$field_values.bg_opacity/2|escape:'htmlall':'UTF-8'}{literal}) !important;
|
||||
}
|
||||
</style><!--/inline css-->
|
||||
{/literal}
|
||||
{if isset($field_values) AND $field_values.bg_type}
|
||||
{if $field_values.bg_type == "background-video" AND isset($field_values.bg_video)}
|
||||
<script type="text/javascript">{literal}
|
||||
var psNew = parseInt("{if $version ge '1.7'}1{else}0{/if}");
|
||||
$(document).ready(function() {
|
||||
var wrapper = (psNew)? '#wrapper' : '#page';
|
||||
$(wrapper).tubular({videoId: {/literal}'{$field_values.bg_video}'{literal}}); {*html content*}
|
||||
});{/literal}
|
||||
</script>
|
||||
{/if}
|
||||
{/if}
|
||||
</head>
|
||||
<body {if isset($field_values) AND $field_values.bg_type}{if $field_values.bg_type == "background-image" AND isset($field_values.bg_img)}id="bg-private-image"{elseif $field_values.bg_type == "background-video" AND isset($field_values.bg_video_img)}id="bg-private-image_video"{else if isset($field_values.bg_color) AND $field_values.bg_type == 'background-color'}id="bg-private-color"{/if}{/if}>
|
||||
<div id="wrapper"{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'} class="bg_opacity"{elseif $field_values.position == 'right'} class="bg_opacity"{/if} style="{if isset($field_values.position) AND $field_values.position AND $field_values.position == 'left'}float: left; margin-left:3%;{elseif $field_values.position == 'right'}float: right; margin-right:3%;{elseif $field_values.position == 'center'}margin:0 auto;{/if}" {if isset($field_values) AND $field_values.position == 'center'}class="center_align bg_opacity"{/if}>
|
||||
<div id="privatebox">
|
||||
<div class="container bg_opacity_white" id="fmm_ps17">
|
||||
<p style="text-align:center;"><img src="{$logo_url|escape:'htmlall':'UTF-8'}" alt="logo" /></p>
|
||||
{if isset($field_values.restrict_message) AND empty($field_values.restrict_message)}
|
||||
<div id="restricted">
|
||||
<h1>{l s='Your Account is created but pedning validation.' mod='privateshoplite'}</h1>
|
||||
</div>
|
||||
{else}
|
||||
{$field_values.restrict_message nofilter}{*HTML Content*}
|
||||
{/if}
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
32
modules/privateshoplite/views/templates/hook/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||
78
modules/privateshoplite/views/templates/hook/info.tpl
Normal file
@@ -0,0 +1,78 @@
|
||||
{*
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/osl-3.0.php
|
||||
*
|
||||
* @author FME Modules
|
||||
* @copyright 2021 fmemodules All right reserved
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
*}
|
||||
{*Tools::version_compare(_PS_VERSION_, '1.7', '>=')*}
|
||||
<div class="panel" id="fmm_promo_panel">
|
||||
<div class="col-lg-3">
|
||||
<ul>
|
||||
<li><a href="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/readme_en.pdf" target="_blank" title="Need Help">{if Tools::version_compare(_PS_VERSION_, '1.7', '>=') > 0}<i class="material-icons"></i>{else}<i class="icon-question-circle"></i>{/if}Help?</a></li>
|
||||
<li class="color_red"><a href="https://addons.prestashop.com/contact-form.php?id_product=20141" target="_blank" title="Need Support">{if Tools::version_compare(_PS_VERSION_, '1.7', '>=') > 0}<i class="material-icons"></i>{else}<i class="icon-comments"></i>{/if}Support</a></li>
|
||||
<li class="color_blue"><a href="https://addons.prestashop.com/en/private-sales-flash-sales/20141-private-shop-login-to-see-products-store.html" target="_blank" title="Need Details">{if Tools::version_compare(_PS_VERSION_, '1.7', '>=') > 0}<i class="material-icons"></i>{else}<i class="icon-eye"></i>{/if}Details</a></li>
|
||||
<li class="color_orange"><a href="http://addons.prestashop.com/en/ratings.php" target="_blank" title="Rate us 5 stars">{if Tools::version_compare(_PS_VERSION_, '1.7', '>=') > 0}<i class="material-icons"></i>{else}<i class="icon-gratipay"></i>{/if}Rate Us</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-lg-7 fmm_promo_modules">
|
||||
<ol>
|
||||
<li class="fmm_promo_maylike">Modules you may like...</li>
|
||||
<li><a href="https://addons.prestashop.com/en/url-redirects/16633-pretty-urls-remove-ids-numbers-for-seo-friendly-url.html" target="_blank" title="Pretty URLs"><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/modules/prettyurl.png" alt="" /><i>Pretty URLs Module</i></a></li>
|
||||
<li><a href="https://addons.prestashop.com/en/registration-ordering-process/19294-registration-fields-add-custom-fields-attributes.html" target="_blank" title="Registration Fields"><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/modules/registrationfields.png" alt="" /><i>Registration Fields Module</i></a></li>
|
||||
<li><a href="https://addons.prestashop.com/en/registration-ordering-process/19008-custom-fields-add-extra-field-to-checkout-order-page.html" target="_blank" title="Custom Fields"><img src="{$smarty.const.__PS_BASE_URI__|escape:'htmlall':'UTF-8'}modules/privateshoplite/views/img/modules/customfields.png" alt="" /><i>Custom Fields Module</i></a></li>
|
||||
</ol>
|
||||
</div>
|
||||
<div class="col-lg-2 fmm_promo_basecamp">
|
||||
<a href="https://addons.prestashop.com/en/139_fme-modules" title="FME Modules" target="_blank">
|
||||
<i>See all modules</i>
|
||||
<img src="https://www.fmemodules.com/img/prestashop-modules-and-addons-logo-1456381524.jpg" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
{literal}
|
||||
<style type="text/css">
|
||||
.panel:after { content: "."; clear: both; width: 100%; visibility: hidden; height: 0px; display: block;}
|
||||
#fmm_promo_panel ul { padding: 0; margin: 0; list-style: none; font-size: 12px; color: #6ab233;}
|
||||
#fmm_promo_panel ul a { text-decoration: none; color: #6ab233;}
|
||||
#fmm_promo_panel ul a:hover,
|
||||
#fmm_promo_panel ul a:focus,
|
||||
#fmm_promo_panel ul a:active { text-decoration: none; color: #515151 !important;}
|
||||
#fmm_promo_panel ul li { list-style: none; display: inline-block; width: 23%; margin-right: 1%; text-align: center;}
|
||||
#fmm_promo_panel ul li i { display: block; clear: both; font-size: 42px;}
|
||||
#fmm_promo_panel ul li.color_red,
|
||||
#fmm_promo_panel ul li.color_red a { color: red;}
|
||||
#fmm_promo_panel ul li.color_blue,
|
||||
#fmm_promo_panel ul li.color_blue a { color: #4169E1;}
|
||||
#fmm_promo_panel ul li.color_orange,
|
||||
#fmm_promo_panel ul li.color_orange a { color: #fbbb22;}
|
||||
.fmm_promo_modules ol { padding: 0; margin: 0; list-style: none; font-size: 11px; color: #6ab233; display: inline-block;}
|
||||
.fmm_promo_modules ol li { list-style: none; display: inline-block; width: 22%; margin-right: 1%; text-align: center; vertical-align: middle}
|
||||
.fmm_promo_modules ol li.fmm_promo_maylike { width: 20%;font-size: 12px; color: #6ab233; text-transform: uppercase;padding: 0; margin: 0 3% 0 0;
|
||||
font-weight: bold;}
|
||||
.fmm_promo_modules ol li a {display: block; line-height: 18px;text-decoration: none; color: #6ab233;}
|
||||
.fmm_promo_modules ol li a img { display: inline-block; padding-right: 1%; max-width: 49%; vertical-align: middle; width: 49%;}
|
||||
.fmm_promo_modules ol li i { font-style: normal; display: inline-block; vertical-align: middle; width: 50%;}
|
||||
.fmm_promo_basecamp { text-align: center;}
|
||||
.fmm_promo_basecamp a { text-decoration: none;color:#6ab233;}
|
||||
.fmm_promo_basecamp a:hover,
|
||||
.fmm_promo_basecamp a:active,
|
||||
.fmm_promo_basecamp a:focus { text-decoration: none; color:#515151 !important; }
|
||||
.fmm_promo_basecamp i { font-style: normal; text-transform: uppercase; font-weight: 700; padding: 4px;
|
||||
border: 1px solid #6ab233; border-radius: 4px; display: block; clear: both; margin-bottom: 5px; }
|
||||
.fmm_promo_basecamp a:hover i {color:#515151 !important; border-color:#515151 !important; }
|
||||
.fmm_promo_basecamp img { max-width: 100%; width: 150px;}
|
||||
@media (min-width: 200px) and (max-width: 1190px) {
|
||||
.fmm_promo_modules,
|
||||
.fmm_promo_basecamp { padding-top: 15px;}
|
||||
}
|
||||
@media (min-width: 200px) and (max-width:430px) {
|
||||
.fmm_promo_modules { display: none}
|
||||
}
|
||||
</style>{/literal}
|
||||
32
modules/privateshoplite/views/templates/index.php
Normal file
@@ -0,0 +1,32 @@
|
||||
<?php
|
||||
/**
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Academic Free License (AFL 3.0)
|
||||
* that is bundled with this package in the file LICENSE.txt.
|
||||
* It is also available through the world-wide-web at this URL:
|
||||
* http://opensource.org/licenses/afl-3.0.php
|
||||
* If you did not receive a copy of the license and are unable to
|
||||
* obtain it through the world-wide-web, please send an email
|
||||
* to license@prestashop.com so we can send you a copy immediately.
|
||||
*
|
||||
* DISCLAIMER
|
||||
*
|
||||
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
|
||||
* versions in the future. If you wish to customize PrestaShop for your
|
||||
* needs please refer to http://www.prestashop.com for more information.
|
||||
*
|
||||
* @author PrestaShop SA <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');
|
||||
header('Cache-Control: no-store, no-cache, must-revalidate');
|
||||
header('Cache-Control: post-check=0, pre-check=0', false);
|
||||
header('Pragma: no-cache');
|
||||
header('Location: ../');
|
||||
exit;
|
||||