Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- https://redmine.oml.ru/issues/47081
- http://3444844.pre2.test.m/
- Шаблоны:
- shop2-kind-available-customer-email-subject.tpl
- shop2-kind-available-customer-email-message.tpl
- Шаблон: shop2-kind-available-customer-email-message.tpl
- Название шаблона: Настройка уведомлений. KIND_AVAILABLE. Покупатель. email. message
- Содержимое шаблона: ((
- Уважаемый покупатель,
- Вы интересовались данным товаром ранее и мы рады сообщить Вам о его поступлении в продажу.
- {assign var="kind_currency_id" value=$kind.currency_id}
- {assign var="kind_currency" value=$shop2.currency.$kind_currency_id.currency_shortname}
- {if !$shop2.my.hide_article && $order_form_settings.article}({if $kind.article}{$kind.article}{else}артикул не задан{/if}) {/if}{$kind.name} -- {$kind.price|price_convert|regex_replace:"/ /":" "} {$kind_currency} {"\n"}
- Страница товара: {$site.protocol}://{$site.domain_mask}{get_seo_url uri_prefix=$shop2.uri mode="product" alias=$kind.alias}{"\n"}
- ))
- Шаблоны: shop2.v2-amount-btn.tpl -- Магазин 2.v2. Количество (кнопки)
- Добавил в условие это {if $pr.buy_mode == 1 || $pr.buy_mode == 5}
- shop2.v2-buy-btn.tpl Магазин 2.v2. Купить (кнопка)
- Добавил кнопку https://prnt.sc/4EKzsFotBpFH при условии $pr.buy_mode == 5}
- CSS к кнопка и форме https://pastebin.com/VTApRmgB
- В Js
- shop2.queue.addToCart = function() {
- $(document).on('click', '.shop2-product-btn:not(.preorder-btn-js)'
- добавил :not(.preorder-btn-js)
- И
- shop2.queue.preOrder = function() {
- var sentAjax_preorder = function(data, callback){
- $.ajax({
- url: '/my/s3/xapi/public/?method=shop2/addKindEmailNotification',
- method: 'post',
- xhrFields: {
- withCredentials: true
- },
- data: data,
- success: function(result) {
- callback(result);
- }
- });
- };
- var object_preorder = {};
- $(document).on('click', '.preorder-btn-js', function(e) {
- e.preventDefault();
- object_preorder.data = {};
- object_preorder.jQbtn = $(this);
- object_preorder.data.kind_id = object_preorder.jQbtn.data('product-kind_id');
- object_preorder.data.email = object_preorder.jQbtn.data('user-email') || 0;
- if( object_preorder.data.email ){
- var temp_email = `
- <div class="preorder-field preorder-email">
- <span class="preorder-email_text">
- ${shop2.my.preorder_email_text||'Данный email указан при регистрации.'}
- </span>
- <div class="preorder-email-input">
- <div class="preorder-field-title">E-mail: <span class="preorder-mark">*</span></div>
- <div class="preorder-field-value">
- <input type="text" name="email" required value="${object_preorder.data.email}">
- </div>
- </div>
- </div>
- `;
- }else {
- var temp_email = `
- <div class="preorder-field preorder-email">
- <div class="preorder-email-input">
- <div class="preorder-field-title">E-mail: <span class="preorder-mark">*</span></div>
- <div class="preorder-field-value">
- <input type="text" name="email" required value="">
- </div>
- </div>
- </div>
- `;
- }
- var temp_html = `
- <div class="preorder-form-wrap preorder-block">
- <form class="preorder_body" action="/my/s3/xapi/public/?method=shop2/addKindEmailNotification" method="get">
- <div class="preorder-title preorder-title">
- ${shop2.my.preorder_form_title||'Узнать о поступлении'}
- </div>
- <div class="preorder_text preorder-field type-html">
- ${shop2.my.preorder_form_text||'Оставьте почту и мы напишем вам, когда товар появится в наличии.'}
- </div>
- ${temp_email}
- <input type="hidden" name="kind_id" value="${object_preorder.data.kind_id}">
- <div class="preorder-field preorder-field-button preorder_send">
- <button type="submit" class="tpl-form-button">${shop2.my.preorder_form_submitt||'Отправить'}</button>
- </div>
- </form>
- <div class="block-recaptcha"></div>
- </div>
- `;
- shop2.alert( temp_html, 'close', 'preorder-alert' );
- });
- $(document).on('submit', '.block-recaptcha form', function(e) {
- e.preventDefault();
- var serializeArray = $(this).serializeArray();
- for(let i = 0; i < serializeArray.length; i++){
- if( serializeArray[i]['name'] == '_sitekey' ){ object_preorder.data['_sitekey'] = serializeArray[i]['value'];}
- if( serializeArray[i]['name'] == 'g-recaptcha-response' ){ object_preorder.data['g-recaptcha-response'] = serializeArray[i]['value'];}
- }
- sentAjax_preorder( object_preorder.data, (data)=>{
- console.log(data);
- object_preorder.jQbtn.get(0).setAttribute('disabled', 'disabled');
- $('.preorder-form-wrap').html(`
- <div class="preorder_success">
- ${shop2.my.preorder_form_success||'Спасибо!'}
- </div>
- `);
- })
- });
- $(document).on('submit', '.preorder_body', function(e) {
- e.preventDefault();
- var $form = $(this);
- object_preorder.data.email = this.email.value;
- const _regexEmeil = /^[\w-\.]+@[\w-]+\.[a-z]{2,4}$/i;
- let valid = _regexEmeil.test(object_preorder.data.email);
- if (valid){
- $.get( '/my/s3/xapi/public/?method=shop2/addKindEmailNotification', function( data ) {
- const _regexBody = new RegExp(/<body[^>]*>(.*?)<\/body>/ig);
- let body = data.result.html.match( _regexBody );
- $form.parent('.preorder-block').find('.block-recaptcha').html( body );
- });
- }else {
- if( !$form.find('.preorder-email').hasClass('field-error') )
- $form
- .find('.preorder-email')
- .addClass('field-error')
- .find('.preorder-email-input .preorder-field-value')
- .before(`<div class="error-message">Неверный формат адреса электронной почты</div>`);
- }
- });
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement