Fix | Profile add forms #25

Merged
Andrei-10 merged 1 commits from web_10 into master 3 months ago
  1. 79
      robots.txt
  2. 39
      wp-content/themes/cosmopet/functions.php
  3. 172
      wp-content/themes/cosmopet/global-functions/core-functions.php
  4. 4
      wp-content/themes/cosmopet/global-functions/multilang-functions.php
  5. 464
      wp-content/themes/cosmopet/modules/layout/assets/js/gp-form.js
  6. 2250
      wp-content/themes/cosmopet/modules/profile/assets/css/profile.css
  7. 19
      wp-content/themes/cosmopet/modules/profile/assets/js/profile.js
  8. 2
      wp-content/themes/cosmopet/modules/profile/module-ajax-controller.php
  9. 177
      wp-content/themes/cosmopet/modules/profile/module-controller.php
  10. 303
      wp-content/themes/cosmopet/templates/pet-card.twig
  11. 384
      wp-content/themes/cosmopet/templates/profile/profile.twig

@ -0,0 +1,79 @@
User-agent: *
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Allow: */uploads
Sitemap: https://cosmopet.ru/sitemap_index.xml
User-agent: GoogleBot
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Disallow: *utm*=
Disallow: *etext*=
Disallow: *?add-to-cart*
Disallow: *?per_page*
Disallow: *?per_row*
Disallow: *openstat=
Allow: */uploads
Allow: /*/*.js
Allow: /*/*.css
Allow: /wp-*.png
Allow: /wp-*.jpg
Allow: /wp-*.jpeg
Allow: /wp-*.gif
Allow: /wp-admin/admin-ajax.php
Sitemap: https://cosmopet.ru/sitemap_index.xml
User-agent: Yandex
Disallow: /cgi-bin
Disallow: /?
Disallow: /wp-
Disallow: /wp/
Disallow: *?s=
Disallow: *&s=
Disallow: /search/
Disallow: /author/
Disallow: /users/
Disallow: */trackback
Disallow: */feed
Disallow: */rss
Disallow: */embed
Disallow: */wlwmanifest.xml
Disallow: /xmlrpc.php
Allow: */uploads
Allow: /*/*.js
Allow: /*/*.css
Allow: /wp-*.png
Allow: /wp-*.jpg
Allow: /wp-*.jpeg
Allow: /wp-*.gif
Allow: /wp-admin/admin-ajax.php
Sitemap: https://cosmopet.ru/sitemap_index.xml
Clean-Param: utm_source&utm_medium&utm_campaign&etext&add-to-cart&per_page&per_row&from&attribute_pa_weight&attribute_pa_ves-upakovki
Clean-Param: openstat

@ -424,7 +424,7 @@ requireShortcodes(get_template_directory() . '/modules');
require_once('modules/blog/module-ajax-controller.php');
require_once('modules/forms/module-ajax-controller.php');
require_once('modules/shop/module-ajax-controller.php');
require_once('modules/profile/module-ajax-controller.php');
add_action('wp', 'my_custom_checkout_code');
@ -1195,3 +1195,40 @@ function remove_woocommerce_styles_on_checkout() {
}
}
// Отключаем канонические ссылки и hreflang от Yoast SEO
add_filter('wpseo_canonical', '__return_false');
add_filter('wpseo_opengraph_url', '__return_false'); // Отключаем OG URL
add_filter('wpseo_add_x_default_hreflang', '__return_false'); // Отключаем hreflang от Yoast
add_filter('wpseo_disable_adjacent_rel_links', '__return_true'); // Отключаем соседние rel-ссылки
// Добавляем каноническую ссылку
add_action('wp_head', 'custom_canonical_url', 5);
function custom_canonical_url() {
// Защищаем от дублирования
static $canonical_added = false;
if ($canonical_added) {
return;
}
$canonical_added = true;
$current_url = home_url(add_query_arg('', $_SERVER['REQUEST_URI']));
echo '<link rel="canonical" href="' . esc_url($current_url) . '" />' . "\n";
}
// Добавляем hreflang теги для cosmopet.shop
add_action('wp_head', 'custom_hreflang_shop', 6);
function custom_hreflang_shop() {
// Защищаем от дублирования
static $hreflang_added = false;
if ($hreflang_added) {
return;
}
$hreflang_added = true;
$current_path = add_query_arg('', $_SERVER['REQUEST_URI']);
$ru_domain = 'https://cosmopet-test-ru.cp.good-production.xyz';
$en_domain = 'https://cosmopet-test-ae.cp.good-production.xyz';
echo '<link rel="alternate" hreflang="ru-RU" href="' . esc_url($ru_domain . $current_path) . '" />' . "\n";
echo '<link rel="alternate" hreflang="en-AE" href="' . esc_url($en_domain . $current_path) . '" />' . "\n";
}

@ -1,2 +1,174 @@
<?php
add_action('template_redirect', 'redirect_non_logged_in_users');
function redirect_non_logged_in_users() {
// URL личного кабинета (замените 'your-account-page-slug' на ваш slug)
$account_page_slug = 'my-account-3';
$account_page_slug__2 = 'my-account';
// Проверяем, находится ли пользователь на странице личного кабинета
if (is_page($account_page_slug) && !is_user_logged_in() || is_page($account_page_slug__2) && !is_user_logged_in() ) {
wp_redirect(home_url()); // Перенаправляем на главную страницу
exit;
}
}
add_action('init', 'register_pets');
function register_pets(){
register_post_type('pets', array(
'labels' => array(
'name' => 'Питомцы', // Основное название типа записи
'singular_name' => 'Питомец', // отдельное название записи типа Book
'add_new' => 'Добавить нового',
'add_new_item' => 'Добавить нового питомца',
'edit_item' => 'Редактировать питомца',
'new_item' => 'Новый питомец',
'view_item' => 'Посмотреть питомца',
'search_items' => 'Найти питомца',
'not_found' => 'Питомцев не найдено',
'not_found_in_trash' => 'В корзине книг не найдено',
'parent_item_colon' => '',
'menu_name' => 'Питомцы'
),
'public' => false,
'show_ui' => true,
'supports' => array('title','editor')
) );
}
function get_pet_card($item){
?>
<?php
switch (get_field('weight')){
case ('below_1_5'):
$w = esc_html__('from 0,5 kg to 1,5 kg', 'woodmart' );
break;
case ('1_5-3'):
$w = esc_html__('from 1.5 to 3 kg', 'woodmart' );
break;
case ('3-5'):
$w = esc_html__('from 3 to 5 kg', 'woodmart' );
break;
case ('5-8'):
$w = esc_html__('from 5 to 8 kg', 'woodmart' );
break;
case ('8-11'):
$w = esc_html__('from 8 to 11 kg', 'woodmart' );
break;
case ('11-15'):
$w = esc_html__('from 11 to 15 kg', 'woodmart' );
break;
case ('15-20'):
$w = esc_html__('from 15 to 20 kg', 'woodmart' );
break;
case ('20-25'):
$w = esc_html__('from 20 to 25 kg', 'woodmart' );
break;
case ('25-35'):
$w = esc_html__('from 25 to 35 kg', 'woodmart' );
break;
case ('more_35'):
$w = esc_html__('More than 35 kg', 'woodmart' );
break;
}
switch (get_field('old')){
case ('normal'):
$old = esc_html__('Adult (from 1 year to 7 years)', 'woodmart' );
break;
case ('old'):
$old = esc_html__('Elderly (from 7 to 12 years)', 'woodmart' );
break;
case ('very_old'):
$old = esc_html__('Aging (12 years and older)', 'woodmart' );
break;
case ('baby'):
$old = esc_html__('Baby (from 0 to 1 year)' );
break;
}
switch (get_field('activity')){
case ('low'):
$act = esc_html__('Low', 'woodmart' );
break;
case ('moderate'):
$act = esc_html__('Moderate', 'woodmart' );
break;
case ('high'):
$act = esc_html__('High', 'woodmart' );
break;
}
?>
<div class="cabinet-card cabinet-card--green">
<div class="cabinet-card__content">
<div class="cabinet-card__pet">
<div class="cabinet-card-pet__icon">
<div class="cabinet-card-pet-icon__content">
<img src="<?= get_template_directory_uri();?>/gp-include/assets/lk/img/pet/mini-<?php echo get_field('type', $item) ?>.png" alt="">
</div>
</div>
<p class="cabinet-card-pet__name"><?php echo get_the_title($item) ?></p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Breed', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo get_field('breed', $item) ?></p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Weight', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $w; ?></p>
</div>
<?php if ($old): ?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Age', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $old; ?></p>
</div>
<?php
else:
?>
<?php
$zero = '';
if (intval(get_field('month', $item)) < 10){
$zero = '0';
}
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Birhtday', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo get_field('day', $item) . '.' . $zero . get_field('month', $item) . '.' . get_field('year', $item); ?></p>
</div>
<?php
endif;
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Activity', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $act; ?></p>
</div>
<?php
if (get_field('type', $item) == 'cat' && get_field('sterilized', $item)):
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Sterilized', 'woodmart' ) ?></p>
</div>
<?php
endif;
?>
<div class="cabinet-card__element">
<button class="cabinet-card__button" data-edit="<?php echo get_the_ID($item); ?>">
<?php echo esc_html__('Edit', 'woodmart' ) ?>
</button>
</div>
</div>
</div>
<?php
}

@ -89,6 +89,10 @@ add_action('init', function() {
pll_register_string ('Спасибо! Сообщение успешно отправлено.', 'Спасибо! Сообщение успешно отправлено.');
pll_register_string ('Наш менеджер скоро свяжемся с вами<br>для уточнения деталей.', 'Наш менеджер скоро свяжемся с вами<br>для уточнения деталей.');
pll_register_string ('Вернуться на сайт', 'Вернуться на сайт');
pll_register_string( 'Link email', 'Link email');
pll_register_string( 'Linked accounts', 'Linked accounts');
});

@ -1,54 +1,54 @@
'use strict';
inputPhone('.form-input__phone', '.form-input-phone__icon', '.form-input-phone__code', '.form-input-phone__input', '.form-input-phone__list', 'form-input-phone-list__item', '.form-input-phone-list-item__icon', '.form-input-phone-list-item__code', 'form-input-phone-list__search');
function inputPhone(main, mainFlag, mainCode, input, list, selects, selectIcon, selectCode, searchInput) {
let inputs = document.querySelectorAll(main);
inputs.forEach(e => {
let thisMainFlag = e.querySelector(mainFlag),
thisMainCode = e.querySelector(mainCode),
thisInput = e.querySelector(input),
thisList = e.querySelector(list),
thisSelects = e.querySelectorAll(`.${selects}`),
thisSearchInput = e.querySelector(`.${searchInput}`);
thisInput.onblur = function (input) {
if (!(input.relatedTarget != null && (input.relatedTarget.classList.contains(searchInput) || input.relatedTarget.classList.contains(selects)))) {
thisList.classList.remove('active');
}
}
e.onclick = function (event) {
if (!event.target.classList.contains(searchInput)) {
if (thisList.classList.contains('active')) {
thisList.classList.remove('active');
}
thisInput.focus();
thisList.classList.add('active');
}
}
thisSelects.forEach(e => {
let newIcon = e.querySelector(selectIcon),
newCode = e.querySelector(selectCode);
e.onclick = function (event) {
event.preventDefault();
thisMainFlag.style.cssText = `background-image:url("${newIcon.src}");`;
thisMainCode.textContent = newCode.textContent;
setTimeout(() => {
thisList.classList.remove('active');
}, 0);
}
})
})
}
// inputPhone('.form-input__phone', '.form-input-phone__icon', '.form-input-phone__code', '.form-input-phone__input', '.form-input-phone__list', 'form-input-phone-list__item', '.form-input-phone-list-item__icon', '.form-input-phone-list-item__code', 'form-input-phone-list__search');
// function inputPhone(main, mainFlag, mainCode, input, list, selects, selectIcon, selectCode, searchInput) {
// let inputs = document.querySelectorAll(main);
// inputs.forEach(e => {
// let thisMainFlag = e.querySelector(mainFlag),
// thisMainCode = e.querySelector(mainCode),
// thisInput = e.querySelector(input),
// thisList = e.querySelector(list),
// thisSelects = e.querySelectorAll(`.${selects}`),
// thisSearchInput = e.querySelector(`.${searchInput}`);
// thisInput.onblur = function (input) {
// if (!(input.relatedTarget != null && (input.relatedTarget.classList.contains(searchInput) || input.relatedTarget.classList.contains(selects)))) {
// thisList.classList.remove('active');
// }
// }
// e.onclick = function (event) {
// if (!event.target.classList.contains(searchInput)) {
// if (thisList.classList.contains('active')) {
// thisList.classList.remove('active');
// }
// thisInput.focus();
// thisList.classList.add('active');
// }
// }
// thisSelects.forEach(e => {
// let newIcon = e.querySelector(selectIcon),
// newCode = e.querySelector(selectCode);
// e.onclick = function (event) {
// event.preventDefault();
// thisMainFlag.style.cssText = `background-image:url("${newIcon.src}");`;
// thisMainCode.textContent = newCode.textContent;
// setTimeout(() => {
// thisList.classList.remove('active');
// }, 0);
// }
// })
// })
// }
if (document.querySelector('.form-input-phone__input')) {
checkPhone('.form-input-phone__input');
@ -84,15 +84,9 @@ function inputTabs(main, button) {
buttons.forEach(button => {
button.onclick = function () {
if (button.classList.contains('active')) {
return ;
}
main.querySelector('.active').classList.remove('active');
button.classList.add('active');
button.querySelector('input').click();
}
})
@ -100,197 +94,283 @@ function inputTabs(main, button) {
}
inputRadio('.form-input__radio', '.form-input-radio__item', '.form-input-radio__title', '.form-input-radio__input')
// inputRadio('.form-input__radio', '.form-input-radio__item', '.form-input-radio__title', '.form-input-radio__input')
function inputRadio(main ,item, textClass, input) {
let inputRadios = document.querySelectorAll(main);
// function inputRadio(main ,item, textClass, input) {
// let inputRadios = document.querySelectorAll(main);
inputRadios.forEach(inputRadio => {
let items = inputRadio.querySelectorAll(item),
thisInput = inputRadio.querySelector(input);
// inputRadios.forEach(inputRadio => {
// let items = inputRadio.querySelectorAll(item),
// thisInput = inputRadio.querySelector(input);
items.forEach(radio => {
let thisText = radio.querySelector(textClass).textContent;
// items.forEach(radio => {
// let thisText = radio.querySelector(textClass).textContent;
radio.onclick = function (event) {
event.preventDefault();
// radio.onclick = function (event) {
// event.preventDefault();
if (inputRadio.querySelector(`${item}.active`)) {
inputRadio.querySelector(`${item}.active`).classList.remove('active');
}
thisInput.value = thisText;
radio.classList.add('active');
}
})
})
}
// if (inputRadio.querySelector(`${item}.active`)) {
// inputRadio.querySelector(`${item}.active`).classList.remove('active');
// }
// thisInput.value = thisText;
// radio.classList.add('active');
// }
// })
// })
// }
listInputRadio('.form-input__list' ,'.form-input-list__item', '.form-input-list-item__text', '.form-input-list__input', '.form-input-list__content', '.form-input-list__block-content');
// listInputRadio('.form-input__list' ,'.form-input-list__item', '.form-input-list-item__text', '.form-input-list__content', '.form-input-list__block-content');
function listInputRadio(main ,item, textClass, input, content, block) {
let listInputRadios = document.querySelectorAll(main);
// function listInputRadio(main ,item, textClass, input, content, block) {
// let listInputRadios = document.querySelectorAll(main);
listInputRadios.forEach(listInputRadio => {
let thisInput = listInputRadio.querySelector(input),
items = listInputRadio.querySelectorAll(item),
thisContent = listInputRadio.querySelector(content),
thisBlock = listInputRadio.querySelector(block);
// listInputRadios.forEach(listInputRadio => {
// let thisInput = listInputRadio.querySelector(input),
// items = listInputRadio.querySelectorAll(item),
// thisContent = listInputRadio.querySelector(content),
// thisBlock = listInputRadio.querySelector(block);
thisInput.onclick = function () {
thisBlock.classList.add('active');
thisBlock.style.height = '192px';
}
// // thisInput.onclick = function () {
// // thisBlock.classList.add('active');
// // thisBlock.style.height = '192px';
// // }
thisInput.onblur = function(){
thisBlock.classList.remove('active');
thisBlock.style.height = '0px';
};
// // thisInput.onblur = function(){
// // thisBlock.classList.remove('active');
// // thisBlock.style.height = '0px';
// // };
items.forEach(item => {
item.onclick = function (event) {
event.preventDefault();
let newText = item.querySelector(textClass).textContent;
// items.forEach(item => {
// item.onclick = function (event) {
// event.preventDefault();
// let newText = item.querySelector(textClass).textContent;
thisInput.value = newText;
// thisInput.value = newText;
if (thisContent.querySelector('.active')) {
thisContent.querySelector('.active').classList.remove('active');
}
// if (thisContent.querySelector('.active')) {
// thisContent.querySelector('.active').classList.remove('active');
// }
item.classList.add('active');
}
})
})
}
// item.classList.add('active');
// }
// })
// })
// }
remoteControl('.form-input__remote-control', '.form-input-tabs__button');
remoteControl('.modal-map__control', '.modal-map-control__item');
function remoteControl(main, button) {
let mains = document.querySelectorAll(main);
// remoteControl('.form-input__remote-control', '.form-input-tabs__button');
// remoteControl('.modal-map__control', '.modal-map-control__item');
mains.forEach(main => {
let subjectClass = main.dataset.content;
if (!subjectClass) return; // Skip if no data-content attribute
// function remoteControl(main, button) {
// let mains = document.querySelectorAll(main);
let subject = document.querySelector(`.${subjectClass}`);
if (!subject) {
console.warn(`Element with class "${subjectClass}" not found`);
return; // Skip if subject element doesn't exist
}
// console.log(mains);
let buttons = Array.from(main.querySelectorAll(button));
if (!buttons.length) return; // Skip if no buttons found
main.addEventListener('click', function(eventMain) {
setTimeout(() => {
let indexActive = buttons.findIndex(button => {
return button.classList.contains('active');
});
// mains.forEach(main => {
// let subjectClass = main.dataset.content,
// subject = document.querySelector(`.${subjectClass}`),
// buttons = Array.from(main.querySelectorAll(button));
// Check if subject has children and index is valid
if (!subject.children.length || indexActive === -1 || indexActive >= subject.children.length) {
return;
}
let activeItem = subject.querySelector('.remote-control__item.active');
if (activeItem) {
activeItem.classList.remove('active');
}
if (subject.children[indexActive].classList.contains('active')) {
return;
// main.addEventListener('mousedown', function (eventMain) {
// setTimeout(() => {
// let indexActive = buttons.findIndex((button, index) => {
// if (button.classList.contains('active')) {
// return true;
// }
// });
// subject.querySelector('.remote-control__item.active').classList.remove('active');
// subject.children[indexActive].classList.add('active');
// }, 0);
// })
// })
// }
// formCheck('.modal-form__content', 'input[type=submit]');
// formCheck('.modal-map__form', 'input[type=submit]');
// function formCheck(form, submit) {
// let forms = document.querySelectorAll(form);
// forms.forEach(form => {
// let thisSubmit = form.querySelector(submit);
// thisSubmit.onclick = function () {
// form.classList.add('check')
// }
// })
// }
jQuery('.form-input-list__item').on('click', function(){
var value = jQuery(this).find('p').html()
var content = jQuery(this).closest('.form-input-list__block-content')
jQuery(content).prev().html(value)
jQuery(content).removeClass('active').css('height', '0px')
})
jQuery('.form-input-list__input').on('click', function(){
// jQuery(this).next().toggleClass('active')
if(!jQuery(this).next().hasClass('active')){
jQuery('.form-input-list__block-content').removeClass('active').css('height', '0px')
jQuery(this).next().css('height', '192px').addClass('active')
}
else{
jQuery(this).next().css('height', '0px').removeClass('active')
}
subject.children[indexActive].classList.add('active');
})
let mandatorys = subject.querySelectorAll('.mandatory');
if (mandatorys.length) {
mandatorys.forEach(mandatory => {
mandatory.required = !mandatory.required;
});
jQuery(document).mouseup(function(e){
var container = jQuery(".modal-form-content-line__element");
if(!container.is(e.target) && container.has(e.target).length === 0){
jQuery('.form-input-list__block-content').removeClass('active').css('height', '0px')
}
}, 0);
});
});
}
formCheck('.modal-form__content', 'input[type=submit]');
formCheck('.modal-map__form', 'input[type=submit]');
function formCheck(form, submit) {
let forms = document.querySelectorAll(form);
forms.forEach(form => {
let thisSubmit = form.querySelector(submit);
thisSubmit.onclick = function () {
form.classList.add('check')
jQuery('#add-pet-form').on('submit', function(e) {
e.preventDefault(); // предотвращаем стандартное поведение формы
var data = jQuery(this).serialize()
jQuery(this).find('button[type="submit"]').addClass('loading').attr('disabled', true)
jQuery.ajax({
type: 'POST',
url: woocommerce_params.ajax_url,
data: data, // отправляем данные формы
complete: function(response) {
location.reload(true)
}
});
});
jQuery('.edit-pet-form').on('submit', function(e) {
e.preventDefault(); // предотвращаем стандартное поведение формы
var data = jQuery(this).serialize()
jQuery(this).find('button[type="submit"]').addClass('loading').attr('disabled', true)
jQuery.ajax({
type: 'POST',
url: woocommerce_params.ajax_url,
data: data, // отправляем данные формы
complete: function(response) {
location.reload(true)
}
});
});
jQuery('.form-input-list__item').on('click', function(){
jQuery(this).closest('.form-input-list__content').find('.form-input-list__item').removeClass('active')
jQuery(this).addClass('active')
})
jQuery('.form-input-radio__item').on('click', function(){
jQuery(this).closest('.form-input__radio').find('.form-input-radio__item').removeClass('active')
jQuery(this).addClass('active')
})
}
inputPhoneNoFlag('.no-flag');
function inputPhoneNoFlag(input){
let inputs = document.querySelectorAll(input);
inputs.forEach(input => {
let code = '+' + input.dataset.code;
jQuery('.cabinet-card__block-add-pets').on('click', function(){
input.onfocus = function () {
if (input.value == '') {
input.value = code;
}
}
jQuery('#pet_add_form').addClass('active')
})
// jQuery('#pet-form-submit').on('click', function(e) {
// jQuery(this).closest('form').submit()
// });
input.addEventListener('input', function(event) {
let text = event.target.value;
let length = text.length;
let newSymbol = event.data;
if (isNaN(event.data) || event.data == ' ') {
event.target.value = text.slice(0, -1);
return;
jQuery('.popup-wrap, .modal-form__close, .modal-form__button-close').on('click', function(e){
if (e.target == this){
jQuery(this).closest('.modalProfile').removeClass('active')
}
})
jQuery('.close-btn').on('click', function(e){
jQuery(this).closest('.modalProfile').removeClass('active')
})
if (length == 3 || length == 7 || length == 11) {
if (newSymbol != null) {
event.target.value = text.slice(0, -1) + ' ' + newSymbol;
jQuery('input[name="pet"]').on('change', function(
){
var block = jQuery(this).closest('form').find('.sterilized')
if (jQuery(this).val() == 'cat'){
jQuery(block).show()
jQuery(this).closest('form').find('input[name="sterilized"]').attr('required', true)
}
else{
jQuery(block).hide()
jQuery(this).closest('form').find('input[name="sterilized"]').attr('required', false)
}
})
jQuery('[data-edit]').on('click', function(){
jQuery('#pet_edit_'+jQuery(this).data('edit')).addClass('active')
})
}
inputCheck('.form-agreement__check');
function inputCheck(className) {
let checks = document.querySelectorAll(className);
// const reset = () => {
// input.classList.remove("error");
// errorMsg.innerHTML = "";
// errorMsg.classList.add("hide");
// validMsg.classList.add("hide");
// };
checks.forEach(check => {
let square = check.querySelector('.form-agreement__square'),
input = check.querySelector('input');
// const showError = (msg) => {
// input.classList.add("error");
// errorMsg.innerHTML = msg;
// errorMsg.classList.remove("hide");
// };
square.onclick = function () {
input.click();
jQuery('.user-edit-form').on('submit', function(e) {
e.preventDefault(); // предотвращаем стандартное поведение формы
jQuery('.form-input__phone').removeClass('error')
var data = jQuery(this).serialize()
jQuery(this).find('button[type="submit"]').addClass('loading').attr('disabled', true)
jQuery.ajax({
type: 'POST',
url: woocommerce_params.ajax_url,
data: data, // отправляем данные формы
complete: function(response) {
location.reload(true)
}
})
}
});
inputRead('.input-read');
function inputRead(className) {
let inputs = document.querySelectorAll(className);
});
inputs.forEach(input => {
input.addEventListener("input", function (event) {
let text = event.target.value;
jQuery('.email_approve_form, .foodSub').on('submit', function(e) {
e.preventDefault(); // предотвращаем стандартное поведение формы
var data = jQuery(this).serialize()
jQuery(this).find('button[type="submit"]').addClass('loading').attr('disabled', true)
jQuery.ajax({
type: 'POST',
url: woocommerce_params.ajax_url,
data: data, // отправляем данные формы
complete: function(response) {
location.reload(true)
}
});
});
jQuery('.user-edit-open').on('click', function(){
jQuery('#user_edit').addClass('active')
})
jQuery('[data-rm]').on('click', function(){
var rm = jQuery(this).closest('.rm')
jQuery(rm).find('[data-rmcont]').removeClass('active').find('input').attr('required', false)
jQuery(rm).find('[data-rmcont="' + jQuery(this).data('rm') + '"]').addClass('active').find('input').attr('required', true)
})
jQuery('.form-sub__btn').on('click', function(){
jQuery('#subForm').addClass('active')
})
event.target.value = text.slice(0, -1);
})
})
}

@ -298,3 +298,22 @@ function toggleOpenX(mainElement, buttonElement ,heightElement, contentElement,
// })
// }
// function
jQuery('.cabinet-card__button').on('click', function(){
var id = jQuery(this).data('edit')
jQuery(`#pet_edit_` + id).addClass('active')
})
jQuery('.form-sub__btn').on('click', function(){
jQuery(`#subForm`).addClass('active')
})
jQuery('.user-edit-open').on('click', function(){
jQuery(`#user_edit`).addClass('active')
})
jQuery('.cabinet-card__block-add-pets').on('click', function(){
jQuery(`#pet_add_form`).addClass('active')
})

@ -15,7 +15,7 @@ function save_custom_user_profile_fields() {
) );
$phone = update_user_meta( get_current_user_id(), 'billing_phone', $_POST['full'] );
$phone = update_user_meta( get_current_user_id(), 'billing_phone', $_POST['phone'] );
}

@ -1,178 +1 @@
<?php
pll_register_string( 'Link email', 'Link email');
pll_register_string( 'Linked accounts', 'Linked accounts');
add_action('template_redirect', 'redirect_non_logged_in_users');
function redirect_non_logged_in_users() {
// URL личного кабинета (замените 'your-account-page-slug' на ваш slug)
$account_page_slug = 'my-account-3';
$account_page_slug__2 = 'my-account';
// Проверяем, находится ли пользователь на странице личного кабинета
if (is_page($account_page_slug) && !is_user_logged_in() || is_page($account_page_slug__2) && !is_user_logged_in() ) {
wp_redirect(home_url()); // Перенаправляем на главную страницу
exit;
}
}
add_action('init', 'register_pets');
function register_pets(){
register_post_type('pets', array(
'labels' => array(
'name' => 'Питомцы', // Основное название типа записи
'singular_name' => 'Питомец', // отдельное название записи типа Book
'add_new' => 'Добавить нового',
'add_new_item' => 'Добавить нового питомца',
'edit_item' => 'Редактировать питомца',
'new_item' => 'Новый питомец',
'view_item' => 'Посмотреть питомца',
'search_items' => 'Найти питомца',
'not_found' => 'Питомцев не найдено',
'not_found_in_trash' => 'В корзине книг не найдено',
'parent_item_colon' => '',
'menu_name' => 'Питомцы'
),
'public' => false,
'show_ui' => true,
'supports' => array('title','editor')
) );
}
function get_pet_card($item){
?>
<?php
switch (get_field('weight')){
case ('below_1_5'):
$w = esc_html__('from 0,5 kg to 1,5 kg', 'woodmart' );
break;
case ('1_5-3'):
$w = esc_html__('from 1.5 to 3 kg', 'woodmart' );
break;
case ('3-5'):
$w = esc_html__('from 3 to 5 kg', 'woodmart' );
break;
case ('5-8'):
$w = esc_html__('from 5 to 8 kg', 'woodmart' );
break;
case ('8-11'):
$w = esc_html__('from 8 to 11 kg', 'woodmart' );
break;
case ('11-15'):
$w = esc_html__('from 11 to 15 kg', 'woodmart' );
break;
case ('15-20'):
$w = esc_html__('from 15 to 20 kg', 'woodmart' );
break;
case ('20-25'):
$w = esc_html__('from 20 to 25 kg', 'woodmart' );
break;
case ('25-35'):
$w = esc_html__('from 25 to 35 kg', 'woodmart' );
break;
case ('more_35'):
$w = esc_html__('More than 35 kg', 'woodmart' );
break;
}
switch (get_field('old')){
case ('normal'):
$old = esc_html__('Adult (from 1 year to 7 years)', 'woodmart' );
break;
case ('old'):
$old = esc_html__('Elderly (from 7 to 12 years)', 'woodmart' );
break;
case ('very_old'):
$old = esc_html__('Aging (12 years and older)', 'woodmart' );
break;
case ('baby'):
$old = esc_html__('Baby (from 0 to 1 year)' );
break;
}
switch (get_field('activity')){
case ('low'):
$act = esc_html__('Low', 'woodmart' );
break;
case ('moderate'):
$act = esc_html__('Moderate', 'woodmart' );
break;
case ('high'):
$act = esc_html__('High', 'woodmart' );
break;
}
?>
<div class="cabinet-card cabinet-card--green">
<div class="cabinet-card__content">
<div class="cabinet-card__pet">
<div class="cabinet-card-pet__icon">
<div class="cabinet-card-pet-icon__content">
<img src="<?= get_template_directory_uri();?>/gp-include/assets/lk/img/pet/mini-<?php echo get_field('type', $item) ?>.png" alt="">
</div>
</div>
<p class="cabinet-card-pet__name"><?php echo get_the_title($item) ?></p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Breed', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo get_field('breed', $item) ?></p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Weight', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $w; ?></p>
</div>
<?php if ($old): ?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Age', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $old; ?></p>
</div>
<?php
else:
?>
<?php
$zero = '';
if (intval(get_field('month', $item)) < 10){
$zero = '0';
}
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Birhtday', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo get_field('day', $item) . '.' . $zero . get_field('month', $item) . '.' . get_field('year', $item); ?></p>
</div>
<?php
endif;
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Activity', 'woodmart' ) ?>:</p>
<p class="cabinet-card__text"><?php echo $act; ?></p>
</div>
<?php
if (get_field('type', $item) == 'cat' && get_field('sterilized', $item)):
?>
<div class="cabinet-card__element">
<p class="cabinet-card__label"><?php echo esc_html__('Sterilized', 'woodmart' ) ?></p>
</div>
<?php
endif;
?>
<div class="cabinet-card__element">
<button class="cabinet-card__button" data-edit="<?php echo get_the_ID($item); ?>">
<?php echo esc_html__('Edit', 'woodmart' ) ?>
</button>
</div>
</div>
</div>
<?php
}

@ -0,0 +1,303 @@
{% set weight_translations = {
'below_1_5': __('from 0,5 kg to 1,5 kg', 'woodmart'),
'1_5-3': __('from 1.5 to 3 kg', 'woodmart'),
'3-5': __('from 3 to 5 kg', 'woodmart'),
'5-8': __('from 5 to 8 kg', 'woodmart'),
'8-11': __('from 8 to 11 kg', 'woodmart'),
'11-15': __('from 11 to 15 kg', 'woodmart'),
'15-20': __('from 15 to 20 kg', 'woodmart'),
'20-25': __('from 20 to 25 kg', 'woodmart'),
'25-35': __('from 25 to 35 kg', 'woodmart'),
'more_35': __('More than 35 kg', 'woodmart')
} %}
{% set old_translations = {
'normal': __('Adult (from 1 year to 7 years)', 'woodmart'),
'old': __('Elderly (from 7 to 12 years)', 'woodmart'),
'very_old': __('Aging (12 years and older)', 'woodmart'),
'baby': __('Baby (from 0 to 1 year)', 'woodmart')
} %}
{% set activity_translations = {
'low': __('Low', 'woodmart'),
'moderate': __('Moderate', 'woodmart'),
'high': __('High', 'woodmart')
} %}
{% set pet_id = item.ID %}
{% set w = weight_translations[function('get_field', 'weight', pet_id)] ?? '' %}
{% set old = old_translations[function('get_field', 'old', pet_id)] ?? '' %}
{% set act = activity_translations[function('get_field', 'activity', pet_id)] ?? '' %}
<div class="cabinet-card cabinet-card--green">
<div class="cabinet-card__content">
<div class="cabinet-card__pet">
<div class="cabinet-card-pet__icon">
<div class="cabinet-card-pet-icon__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/pet/mini-{{ function('get_field', 'type', pet_id) }}.png" alt="">
</div>
</div>
<p class="cabinet-card-pet__name">{{ function('get_the_title', pet_id) }}</p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Breed', 'woodmart') }}:</p>
<p class="cabinet-card__text">{{ function('get_field', 'breed', pet_id) }}</p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Weight', 'woodmart') }}:</p>
<p class="cabinet-card__text">{{ w }}</p>
</div>
{% if old %}
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Age', 'woodmart') }}:</p>
<p class="cabinet-card__text">{{ old }}</p>
</div>
{% else %}
{% set month = function('get_field', 'month', pet_id) %}
{% set zero = month < 10 ? '0' : '' %}
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Birhtday', 'woodmart') }}:</p>
<p class="cabinet-card__text">
{{ function('get_field', 'day', pet_id) }}.{{ zero }}{{ month }}.{{ function('get_field', 'year', pet_id) }}
</p>
</div>
{% endif %}
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Activity', 'woodmart') }}:</p>
<p class="cabinet-card__text">{{ act }}</p>
</div>
{% if function('get_field', 'type', pet_id) == 'cat' and function('get_field', 'sterilized', pet_id) %}
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ __('Sterilized', 'woodmart') }}</p>
</div>
{% endif %}
<div class="cabinet-card__element">
<button class="cabinet-card__button" data-edit="{{ pet_id }}">
{{ __('Edit', 'woodmart') }}
</button>
</div>
</div>
</div>
{% set months = [
__('january', 'woodmart'),
__('february', 'woodmart'),
__('march', 'woodmart'),
__('april', 'woodmart'),
__('mail', 'woodmart'),
__('june', 'woodmart'),
__('july', 'woodmart'),
__('august', 'woodmart'),
__('september', 'woodmart'),
__('october', 'woodmart'),
__('november', 'woodmart'),
__('december', 'woodmart')
] %}
<div class="modalProfile" id="pet_edit_{{ pet_id }}">
<div class="popup-wrap">
<div class="modal-form form__full-mobile modal-form--white modal-form--height-100-phone form-pet active">
<button class="modal-form__close"></button>
<p class="modal-form__title">{{ __('Edit pet', 'woodmart') }} {{ post.post_title }}</p>
<form class="modal-form__content edit-pet-form" method="post" action="">
<input type="hidden" name="action" value="edit_pet">
<div class="modal-form-content__line">
<label class="label-name">{{ __('Pet type', 'woodmart') }}</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {{ function('get_field', 'type', post.ID) == 'cat' ? 'active' : '' }}">
{{ __('Dog', 'woodmart') }}
<input type="radio" value="cat" {{ function('get_field', 'type', post.ID) == 'cat' ? 'checked' : '' }} name="pet" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {{ function('get_field', 'type', post.ID) == 'dog' ? 'active' : '' }}">
{{ __('Cat', 'woodmart') }}
<input type="radio" value="dog" {{ function('get_field', 'type', post.ID) == 'dog' ? 'checked' : '' }} name="pet" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line sterilized" {{ function('get_field', 'type', post.ID) == 'dog' ? 'style="display: none;"' : '' }}>
<label class="label-name">{{ __('Sterilized', 'woodmart') }}</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {{ function('get_field', 'sterilized', post.ID) ? 'active' : '' }}">
{{ __('Yes', 'woodmart') }}
<input type="radio" value="1" {{ function('get_field', 'sterilized', post.ID) ? 'checked' : '' }} name="sterilized" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {{ not function('get_field', 'sterilized', post.ID) ? 'active' : '' }}">
{{ __('No', 'woodmart') }}
<input type="radio" value="0" {{ not function('get_field', 'sterilized', post.ID) ? 'checked' : '' }} name="sterilized" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line">
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">{{ __('Breed', 'woodmart') }}</label>
<input id="firstname" class="form__input" type="text" value="{{ function('get_field', 'breed', post.ID) }}" name="breed" placeholder="{{ __('Breed of your pet', 'woodmart') }}" required>
</div>
</div>
<div class="modal-form-content__line">
<label class="label-name">{{ __('Gender of your pet', 'woodmart') }}</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {{ function('get_field', 'sex', post.ID) == 'male' ? 'active' : '' }}">
{{ __('Boy', 'woodmart') }}
<input type="radio" value="male" {{ function('get_field', 'sex', post.ID) == 'male' ? 'checked' : '' }} name="sex" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {{ function('get_field', 'sex', post.ID) != 'male' ? 'active' : '' }}">
{{ __('Girl', 'woodmart') }}
<input type="radio" value="female" {{ function('get_field', 'sex', post.ID) != 'male' ? 'checked' : '' }} name="sex" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line modal-form-content__line--two">
<div class="modal-form-content-line__element">
<label class="label-name">{{ __('Type of activity', 'woodmart') }}</label>
<div class="form-input__list">
<div class="form-input-list__input">{{ act }}</div>
<div class="form-input-list__block-content" style="height: 0px;">
<div class="form-input-list__content">
<label class="form-input-list__item {{ function('get_field', 'activity', post.ID) == 'low' ? 'active' : '' }}">
<p class="form-input-list-item__text">{{ __('Low', 'woodmart') }}</p>
<input type="radio" required name="activity" {{ function('get_field', 'activity', post.ID) == 'low' ? 'checked' : '' }} value="low" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {{ function('get_field', 'activity', post.ID) == 'moderate' ? 'active' : '' }}">
<p class="form-input-list-item__text">{{ __('Moderate', 'woodmart') }}</p>
<input type="radio" required name="activity" {{ function('get_field', 'activity', post.ID) == 'moderate' ? 'checked' : '' }} value="moderate" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {{ function('get_field', 'activity', post.ID) == 'high' ? 'active' : '' }}">
<p class="form-input-list-item__text">{{ __('High', 'woodmart') }}</p>
<input type="radio" required name="activity" value="high" {{ function('get_field', 'activity', post.ID) == 'high' ? 'checked' : '' }} class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
</div>
</div>
</div>
</div>
<div class="modal-form-content-line__element">
<label class="label-name">{{ __('Weight', 'woodmart') }}</label>
<div class="form-input__list">
<div class="form-input-list__input">{{ w }}</div>
<div class="form-input-list__block-content" style="height: 0px;">
<div class="form-input-list__content">
{% for weight, label in weight_translations %}
<label class="form-input-list__item">
<p class="form-input-list-item__text">{{ label }}</p>
<input type="radio" required name="weight" value="{{ weight }}" {{ function('get_field', 'weight', post.ID) == weight ? 'checked' : '' }} class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
<div class="rm">
<div class="modal-form-content__line">
<label class="label-name">{{ __("Pet's age", 'woodmart') }}</label>
<div class="form-input__tabs form-input__remote-control" data-content="modal__age">
<label class="form-input-tabs__button active" data-rm="0">
{{ __('Exemplary', 'woodmart') }}
<input type="radio" checked value="ex" name="old_type" required class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button" data-rm="1">
{{ __('Exact', 'woodmart') }}
<input type="radio" value="acc" name="old_type" required class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal__age">
<div class="form-input__radio remote-control__item active" data-rmcont="0">
{% for age, label in old_translations %}
<label class="form-input-radio__item {{ function('get_field', 'old', post.ID) == age ? 'active' : '' }}">
<input type="radio" name="old" value="{{ age }}" {{ function('get_field', 'old', post.ID) == age ? 'checked' : '' }} class="v-hidden">
<div class="form-input-radio__circle">
<div class="form-input-radio-circle__content"></div>
</div>
<p class="form-input-radio__title">{{ label }}</p>
</label>
{% endfor %}
</div>
<div data-rmcont="1" class="modal-form-content__line remote-control__item modal-form-content__line--three modal-form-content__line--margin-top-16">
<div class="modal-form-content-line__element">
<label for="day" class="label-name">{{ __('Day', 'woodmart') }}</label>
<input id="day" class="form__input form__input--center" maxlength="2" type="text" name="day" placeholder="{{ __('DD', 'woodmart') }}" value="{{ function('get_field', 'day', post.ID) }}">
</div>
<div class="modal-form-content-line__element">
<label class="label-name">{{ __('Month', 'woodmart') }}</label>
<div class="form-input__list">
<div class="form-input-list__input">
{% if function('get_field', 'month', post.ID) %}
{{ months[function('get_field', 'month', post.ID) - 1] }}
{% else %}
{{ __('Month', 'woodmart') }}
{% endif %}
</div>
<div class="form-input-list__block-content">
<div class="form-input-list__content">
{% for month_num, month_name in months %}
<label class="form-input-list__item">
<p class="form-input-list-item__text">{{ month_name }}</p>
<input type="radio" name="month" value="{{ month_num + 1 }}" {{ function('get_field', 'month', post.ID) == (month_num + 1) ? 'checked' : '' }} class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ function('get_template_directory_uri') }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
{% endfor %}
</div>
</div>
</div>
</div>
<div class="modal-form-content-line__element">
<label for="year" class="label-name">{{ __('Year', 'woodmart') }}</label>
<input id="year" class="form__input form__input--center" maxlength="4" type="text" name="year" placeholder="{{ __('YYYY', 'woodmart') }}" value="{{ function('get_field', 'year', post.ID) }}">
</div>
</div>
</div>
</div>
<input type="hidden" name="pet_id" value="{{ post.ID }}">
<div class="modal-form__buttons">
<button class="button button--gradient button--high button--100-perc" type="submit">{{ __('Save', 'woodmart') }}</button>
</div>
</form>
</div>
</div>
</div>

@ -103,7 +103,7 @@
{% if pets %}
{% for pet in pets %}
{% include 'pet-card.twig' with { 'post': pet } %}
{% include 'pet-card.twig' with { 'item': pet } %}
{% endfor %}
{% endif %}
@ -146,7 +146,7 @@
</div>
<div class="cabinet-card-order__payment">
<p class="cabinet-card-order-payment__title">{{ function('pll_e', 'Summary') }}:</p>
<p class="cabinet-card-order-payment__price">{{ order.total }}</p>
<p class="cabinet-card-order-payment__price">{{ order.get_total() }}</p>
</div>
</div>
<div class="cabinet-card-order__bottom">
@ -169,7 +169,7 @@
<div class="cabinet-card-order-detail-main__products">
{% for item in order.get_items %}
{% set product = item.get_product %}
{% set thumbnail = product ? product.thumbnail.src('thumbnail') : '' %}
{% set thumbnail = product ? function('wp_get_attachment_image_url', product.get_image_id(), 'woocommerce_thumbnail') : function('wc_placeholder_img_src', 'woocommerce_thumbnail') %}
<div class="cabinet-card-order-detail-main__product">
<img src="{{ thumbnail }}" alt="" class="cabinet-card-order-detail-main-product__img">
<div class="cabinet-card-order-detail-main-product__content">
@ -177,7 +177,7 @@
<p class="cabinet-card-order-detail-main-product-description__what">{{ item.name }}</p>
</div>
<p class="cabinet-card-order-detail-main-product__count">{{ item.quantity }}</p>
<p class="cabinet-card-order-detail-main-product__price">{{ item.total }}</p>
<p class="cabinet-card-order-detail-main-product__price">{{ item.total }}&nbsp;{{ function('get_woocommerce_currency_symbol', code) }}</p>
</div>
</div>
{% endfor %}
@ -197,7 +197,7 @@
<div class="cabinet-card-order__detail-short">
{% for item in order.get_items %}
{% set product = item.get_product %}
{% set thumbnail = product ? product.thumbnail.src('thumbnail') : '' %}
{% set thumbnail = product ? function('wp_get_attachment_image_url', product.get_image_id(), 'woocommerce_thumbnail') : function('wc_placeholder_img_src', 'woocommerce_thumbnail') %}
{% if thumbnail %}
<a href="{{ product.permalink }}"><img src="{{ thumbnail }}" alt="" class="cabinet-card-order-detail-short__item"></a>
{% endif %}
@ -224,110 +224,108 @@
</div>
</main>
{% if pet %}
<div class="cabinet-card cabinet-card--green">
<div class="cabinet-card__content">
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ function('pll_e', 'Weight') }}:</p>
<p class="cabinet-card__text">{{ pet.weight_text }}</p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ function('pll_e', 'Age') }}:</p>
<p class="cabinet-card__text">{{ pet.old_text }}</p>
</div>
<div class="cabinet-card__element">
<p class="cabinet-card__label">{{ function('pll_e', 'Activity') }}:</p>
<p class="cabinet-card__text">{{ pet.activity_text }}</p>
</div>
</div>
</div>
{% endif %}
<div class="modalProfile" id="pet_edit_{{ pet.ID }}">
<div class="modalProfile" id="pet_add_form">
<div class="popup-wrap">
<div class="modal-form form__full-mobile modal-form--white modal-form--height-100-phone form-pet active">
<button class="modal-form__close"></button>
<p class="modal-form__title">{{ function('pll_e', 'Edit pet') }} {{ pet.title }}</p>
<p class="modal-form__title">Добавить питомца</p>
<form class="modal-form__content edit-pet-form" method="post" action="">
<input type="hidden" name="action" value="edit_pet">
<form class="modal-form__content" id="add-pet-form" method="post" action="">
<input type="hidden" name="nonce" value="{{ fn('wp_create_nonce', 'add_pet_nonce') }}">
<input type="hidden" name="action" value="add_pet">
<div class="modal-form-content__line">
<label class="label-name">{{ function('pll_e', 'Pet type') }}</label>
<label for="" class="label-name">Вид животного</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {% if pet.type == 'cat' %}active{% endif %}">
{{ function('pll_e', 'Dog') }}
<input come="true" inputtype="radio" value="cat" {% if pet.type == 'cat' %}checked{% endif %} name="pet" class="form-input-tabs__input" />
<label for="cat" class="form-input-tabs__button active">
Кошка
<input type="radio" value="cat" checked name="pet" id="cat" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {% if pet.type == 'dog' %}active{% endif %}">
{{ function('pll_e', 'Cat') }}
<input type="radio" value="dog" {% if pet.type == 'dog' %}checked{% endif %} name="pet" class="form-input-tabs__input" />
<label for="dog" class="form-input-tabs__button">
Собака
<input type="radio" value="dog" name="pet" id="dog" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line sterilized" {% if pet.type == 'dog' %}style="display: none;"{% endif %}>
<label class="label-name">{{ function('pll_e', 'Sterilized') }}</label>
<div class="modal-form-content__line sterilized">
<label for="" class="label-name">Стерелизован</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {% if pet.sterilized %}active{% endif %}">
{{ function('pll_e', 'Yes') }}
<input type="radio" value="1" {% if pet.sterilized %}checked{% endif %} name="sterilized" class="form-input-tabs__input" />
<label class="form-input-tabs__button active">
Да
<input type="radio" value="1" checked name="sterilized" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {% if not pet.sterilized %}active{% endif %}">
{{ function('pll_e', 'No') }}
<input type="radio" value="0" {% if not pet.sterilized %}checked{% endif %} name="sterilized" class="form-input-tabs__input" />
<label class="form-input-tabs__button">
Нет
<input type="radio" value="0" name="sterilized" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line">
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">{{ function('pll_e', 'Breed') }}</label>
<input id="firstname" class="form__input" type="text" value="{{ pet.breed }}" name="breed" placeholder="{{ function('pll_e', 'Breed of your pet') }}" required>
<label for="firstname" class="label-name">Имя</label>
<input id="firstname" class="form__input" type="text" name="name" placeholder="Имя питомца" required>
</div>
</div>
<div class="modal-form-content__line">
<label class="label-name">{{ function('pll_e', 'Gender of your pet') }}</label>
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">Порода</label>
<input id="firstname" class="form__input" type="text" name="breed" placeholder="Порода вашего питомца" required>
</div>
</div>
<div class="modal-form-content__line">
<label for="" class="label-name">Пол вашего питомца</label>
<div class="form-input__tabs">
<label class="form-input-tabs__button {% if pet.sex == 'male' %}active{% endif %}">
{{ function('pll_e', 'Boy') }}
<input type="radio" value="male" {% if pet.sex == 'male' %}checked{% endif %} name="sex" class="form-input-tabs__input" />
<label for="boy" class="form-input-tabs__button active">
Мальчик
<input type="radio" value="male" checked name="sex" id="boy" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button {% if pet.sex != 'male' %}active{% endif %}">
{{ function('pll_e', 'Girl') }}
<input type="radio" value="female" {% if pet.sex != 'male' %}checked{% endif %} name="sex" class="form-input-tabs__input" />
<label for="girl" class="form-input-tabs__button">
Девочка
<input type="radio" value="female" name="sex" id="girl" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal-form-content__line modal-form-content__line--two">
<div class="modal-form-content-line__element">
<label class="label-name">{{ function('pll_e', 'Type of activity') }}</label>
<label class="label-name">Вид активности</label>
<div class="form-input__list">
<div class="form-input-list__input">{{ pet.activity_text }}</div>
<div class="form-input-list__input">Выберите из списка</div>
<div class="form-input-list__block-content" style="height: 0px;">
<div class="form-input-list__content">
<label class="form-input-list__item {% if pet.activity == 'low' %}active{% endif %}">
<p class="form-input-list-item__text">{{ function('pll_e', 'Low') }}</p>
<input type="radio" required name="activity" {% if pet.activity == 'low' %}checked{% endif %} value="low" class="v-hidden">
<label class="form-input-list__item">
<p class="form-input-list-item__text">Низкая</p>
<input type="radio" required name="activity" value="low" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.activity == 'moderate' %}active{% endif %}">
<p class="form-input-list-item__text">{{ function('pll_e', 'Moderate') }}</p>
<input type="radio" required name="activity" {% if pet.activity == 'moderate' %}checked{% endif %} value="moderate" class="v-hidden">
<label class="form-input-list__item">
<p class="form-input-list-item__text">Средняя</p>
<input type="radio" required name="activity" value="moderate" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.activity == 'high' %}active{% endif %}">
<p class="form-input-list-item__text">{{ function('pll_e', 'High') }}</p>
<input type="radio" required name="activity" {% if pet.activity == 'high' %}checked{% endif %} value="high" class="v-hidden">
<label class="form-input-list__item">
<p class="form-input-list-item__text">Высокая</p>
<input type="radio" required name="activity" value="high" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
@ -340,171 +338,102 @@
</div>
<div class="modal-form-content-line__element">
<label class="label-name">{{ function('pll_e', 'Weight') }}</label>
<label for="firstname" class="label-name">Вес</label>
<div class="form-input__list">
<div class="form-input-list__input">{{ pet.weight_text }}</div>
<div class="form-input-list__input">Выберите из списка</div>
<div class="form-input-list__block-content" style="height: 0px;">
<div class="form-input-list__content">
<label class="form-input-list__item {% if pet.weight == 'below_1_5' %}active{% endif %}">
<p class="form-input-list-item__text">1-1.5 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == 'below_1_5' %}checked{% endif %} value="below_1_5" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '1_5-3' %}active{% endif %}">
<p class="form-input-list-item__text">1.5-3 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '1_5-3' %}checked{% endif %} value="1_5-3" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '3-5' %}active{% endif %}">
<p class="form-input-list-item__text">3-5 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '3-5' %}checked{% endif %} value="3-5" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '5-8' %}active{% endif %}">
<p class="form-input-list-item__text">5-8 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '5-8' %}checked{% endif %} value="5-8" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '8-11' %}active{% endif %}">
<p class="form-input-list-item__text">8-11 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '8-11' %}checked{% endif %} value="8-11" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '11-15' %}active{% endif %}">
<p class="form-input-list-item__text">11-15 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '11-15' %}checked{% endif %} value="11-15" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '15-20' %}active{% endif %}">
<p class="form-input-list-item__text">15-20 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '15-20' %}checked{% endif %} value="15-20" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '20-25' %}active{% endif %}">
<p class="form-input-list-item__text">20-25 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '20-25' %}checked{% endif %} value="20-25" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == '25-35' %}active{% endif %}">
<p class="form-input-list-item__text">25-35 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == '25-35' %}checked{% endif %} value="25-35" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
<label class="form-input-list__item {% if pet.weight == 'more_35' %}active{% endif %}">
<p class="form-input-list-item__text">{{ function('pll_e', 'More than') }} 35 {{ function('pll_e', 'kg') }}</p>
<input type="radio" required name="weight" {% if pet.weight == 'more_35' %}checked{% endif %} value="more_35" class="v-hidden">
{% for weight in [
{value: 'below_1_5', text: '1-1.5 кг'},
{value: '1_5-3', text: '1.5-3 кг'},
{value: '3-5', text: '3-5 кг'},
{value: '5-8', text: '5-8 кг'},
{value: '8-11', text: '8-11 кг'},
{value: '11-15', text: '11-15 кг'},
{value: '15-20', text: '10-20кг'},
{value: '20-25', text: '20-25кг'},
{value: '25-35', text: '25-35 кг'},
{value: 'more_35', text: 'Более 35 кг'}
] %}
<label class="form-input-list__item">
<p class="form-input-list-item__text">{{ weight.text }}</p>
<input type="radio" required name="weight" value="{{ weight.value }}" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
</div>
</div>
</label>
{% endfor %}
</div>
</div>
</div>
</div>
</div>
<div class="rm">
<div class="modal-form-content__line">
<label class="label-name">{{ function('pll_e', 'Pet\'s age') }}</label>
<label class="label-name">Возраст питомца</label>
<div class="form-input__tabs form-input__remote-control" data-content="modal__age">
<label class="form-input-tabs__button active" data-rm="0">
{{ function('pll_e', 'Exemplary') }}
<input type="radio" checked value="ex" name="old_type" required class="form-input-tabs__input">
<label for="exemplary" class="form-input-tabs__button active" data-rm="0">
Примерный
<input type="radio" checked value="ex" name="old_type" required id="exemplary" class="form-input-tabs__input">
</label>
<label class="form-input-tabs__button" data-rm="1">
{{ function('pll_e', 'Exact') }}
<input type="radio" value="acc" name="old_type" required class="form-input-tabs__input">
Точный
<input type="radio" value="acc" name="old_type" required id="accurate" class="form-input-tabs__input">
</label>
</div>
</div>
<div class="modal__age">
<div class="form-input__radio remote-control__item active" data-rmcont="0">
<label class="form-input-radio__item {% if pet.old == 'baby' %}active{% endif %}">
<input type="radio" name="old" value="baby" {% if pet.old == 'baby' %}checked{% endif %} class="v-hidden">
<div class="form-input-radio__circle">
<div class="form-input-radio-circle__content"></div>
</div>
<p class="form-input-radio__title">{{ function('pll_e', 'Baby <span>(from 0 to 1 year)</span>')|raw }}</p>
</label>
<label class="form-input-radio__item {% if pet.old == 'normal' %}active{% endif %}">
<input type="radio" name="old" value="normal" {% if pet.old == 'normal' %}checked{% endif %} class="v-hidden">
{% for age in [
{value: 'baby', title: 'Малыш', desc: '(от 0 до 1 года)'},
{value: 'normal', title: 'Взрослый', desc: '(от 1 года до 7 лет)'},
{value: 'old', title: 'Пожилой', desc: '(от 7 до 12 лет)'},
{value: 'very_old', title: 'Стареющий', desc: '(от 12 лет и старше)'}
] %}
<label class="form-input-radio__item {{ loop.first ? 'active' }}">
<input type="radio" name="old" value="{{ age.value }}" {{ loop.first ? 'checked' }} class="v-hidden">
<div class="form-input-radio__circle">
<div class="form-input-radio-circle__content"></div>
</div>
<p class="form-input-radio__title">{{ function('pll_e', 'Adult <span>(from 1 year to 7 years)</span>')|raw }}</p>
</label>
<label class="form-input-radio__item {% if pet.old == 'old' %}active{% endif %}">
<input type="radio" name="old" value="old" {% if pet.old == 'old' %}checked{% endif %} class="v-hidden">
<div class="form-input-radio__circle">
<div class="form-input-radio-circle__content"></div>
</div>
<p class="form-input-radio__title">{{ function('pll_e', 'Elderly <span>(from 7 to 12 years)</span>')|raw }}</p>
</label>
<label class="form-input-radio__item {% if pet.old == 'veryVvery_old' %}active{% endif %}">
<input type="radio" name="old" value="very_old" {% if pet.old == 'very_old' %}checked{% endif %} class="v-hidden">
<div class="form-input-radio__circle">
<div class="form-input-radio-circle__content"></div>
</div>
<p class="form-input-radio__title">{{ function('pll_e', 'Aging <span>(12 years and older)</span>')|raw }}</p>
<p class="form-input-radio__title">{{ age.title }} <span>{{ age.desc }}</span></p>
</label>
{% endfor %}
</div>
<div data-rmcont="1" class="modal-form-content__line remote-control__item modal-form-content__line--three modal-form-content__line--margin-top-16">
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">{{ function('pll_e', 'Day') }}</label>
<input id="firstname" class="form__input form__input--center" maxlength="2" type="text" name="day" placeholder="{{ function('pll_e', 'DD') }}" value="{{ pet.day }}">
<label for="firstname" class="label-name">День</label>
<input id="firstname" class="form__input form__input--center" maxlength="2" type="text" name="day" placeholder="ДД">
</div>
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">{{ function('pll_e', 'Month') }}</label>
<label for="firstname" class="label-name">Месяц</label>
<div class="form-input__list">
{% if pet.month %}
<div class="form-input-list__input">{{ months[pet.month - 1] }}</div>
{% else %}
<div class="form-input-list__input">{{ function('pll_e', 'Month') }}</div>
{% endif %}
<div class="form-input-list__input">Месяц</div>
<div class="form-input-list__block-content">
<div class="form-input-list__content">
{% for month, month_name in months %}
<label class="form-input-list__item {% if pet.month == loop.index %}active{% endif %}">
<p class="form-input-list-item__text">{{ month_name|esc_html }}</p>
<input type="radio" name="month" value="{{ loop.index }}" {% if pet.month == loop.index %}checked{% endif %} class="v-hidden">
{% for month in [
{value: 1, text: 'Январь'},
{value: 2, text: 'Февраль'},
{value: 3, text: 'Март'},
{value: 4, text: 'Апрель'},
{value: 5, text: 'Май'},
{value: 6, text: 'Июнь'},
{value: 7, text: 'Июль'},
{value: 8, text: 'Август'},
{value: 9, text: 'Сентябрь'},
{value: 10, text: 'Октябрь'},
{value: 11, text: 'Ноябрь'},
{value: 12, text: 'Декабрь'}
] %}
<label class="form-input-list__item">
<p class="form-input-list-item__text">{{ month.text }}</p>
<input type="radio" name="month" value="{{ month.value }}" class="v-hidden">
<div class="form-input-list-item__box">
<div class="form-input-list-item-box__content">
<img src="{{ theme.link }}/gp-include/assets/lk/img/svg/main/arrow-selected-white.svg" alt="">
@ -516,15 +445,82 @@
</div>
</div>
</div>
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">{{ function('pll_e', 'Year') }}</label>
<input id="firstname" class="form__input form__input--center" maxlength="4" type="text" name="year" placeholder="{{ function('pll_e', 'YYYY') }}" value="{{ pet.year }}">
<label for="firstname" class="label-name">Год</label>
<input id="firstname" class="form__input form__input--center" maxlength="4" type="text" name="year" placeholder="ГГГГ">
</div>
</div>
</div>
<input type="hidden" name="pet_id" value="{{ pet.ID }}">
</div>
<div class="modal-form__buttons">
<button class="button button--gradient button--high button--100-perc" type="submit">{{ function('pll_e', 'Save') }}</button>
<button class="button button--gradient button--high button--100-perc" type="submit">Добавить</button>
</div>
</form>
</div>
</div>
</div>
<div class="modalProfile" id="subForm">
<div class="popup-wrap">
<div class="modal-form modal__notification modal-form--green-gradient modal-form--width-584 form-sub active">
<button class="modal-form__close modal-form__close--white"></button>
<p class="modal-form__title modal-form__title--white">Подписка на корм</p>
<div class="modal-form__element modal-form__element--top-40">
<p class="modal-form__text modal-form__text--white">
Спасибо за интерес к нашему новому виду услуг, данная функция находится в разработке, если вы хотите узнать первыми о запуске подпишитесь на рассылку.
</p>
</div>
<form class="modal-form__element modal-form__element--top-40 foodSub">
<input type="hidden" name="email" value="{{ user.user_email }}">
<input type="hidden" name="action" value="subscription_sub__profile">
<button class="button form__button-pc button--white button--100-perc open-overlay button--high">
Хочу попробовать первым!
</button>
<button class="button form__button-mobile button--white button--100-perc open-overlay button--high">
Хочу быть первым!
</button>
</form>
</div>
</div>
</div>
<div class="modalProfile" id="user_edit">
<div class="popup-wrap">
<div class="modal-form form__full-mobile modal-form--white modal-form--height-100-phone form-data active">
<button class="modal-form__close"></button>
<p class="modal-form__title">Изменить мои данные</p>
<form class="modal-form__content user-edit-form" method="post">
<input type="hidden" name="action" value="edit_user">
<div class="modal-form-content__line modal-form-content__line--two">
<div class="modal-form-content-line__element">
<label for="firstname" class="label-name">Имя</label>
<input id="firstname" class="form__input" type="text" value="{{ user.user_firstname }}" name="name" placeholder="Ваше имя" required>
<span class="form-input__error form-input__error--absolute">Имя введено неверно</span>
</div>
<div class="modal-form-content-line__element">
<label for="lastname" class="label-name">Фамилия</label>
<input id="lastname" class="form__input" type="text" value="{{ user.user_lastname }}" name="l_name" placeholder="Ваша фамилия" required>
<span class="form-input__error form-input__error--absolute">Фамилия введена неверно</span>
</div>
</div>
<div class="modal-form-content__line">
<label class="label-name">Телефон</label>
<div class="form-input__phone">
<input type="text" placeholder="___ ___ ____" id="tel-phone" value="{{ fn('get_user_meta', user.ID, 'billing_phone', true) }}" name="phone" class="form-input-phone__input" required>
<div class="form-input__error form-input__error--absolute">Номер введён неверно</div>
</div>
</div>
<div class="modal-form__buttons modal-form__buttons--two">
<button class="button button--gradient button--high" type="submit">Сохранить</button>
<input type="reset" class="button button--white open-overlay button--high modal-form__button-close" value="Отмена">
</div>
</form>
</div>

Loading…
Cancel
Save