Jump to content

nailandroid

Новичок
  • Content Count

    15
  • Joined

  • Last visited

Community Reputation

0 Обычный

About nailandroid

  • Rank
    Пользователь

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Вернулся снова к данному вопросу, не могу найти вариант чтобы получить значение чекбокса ('checked') в контроллере checkout.php, помогите написать условие проверки id="zvonok" из формы подтверждения заказа, по хорошему если чекбокс отмечен в комментарий заказа должно добавлять "Не перезванивать мне для подтверждения заказа", помогите решить данную задачу, думаю многим пригодится.
  2. Подскажите какой-то временный костыль чтобы запустить интеграцию или хотя бы объяснить что не так с данной строкой, почему приходит пустое значение, так как тех. поддержка данной CRM очень долго решает данный вопрос и пока что без результата.
  3. Помогите решить проблему или подскажите где искать. Ставлю официальный модуль RetailCRM, почему-то при сохранении настроек вылазить ошибка Fatal error: Call to a member function apiVersions() on null in /home/admin/controller/extension/module/retailcrm.php on line 622 Вот функция на которую ругается. Строка 622 - $response = $apiClient->apiVersions(); private function validate() { $versionsMap = array( 'v3' => '3.0', 'v4' => '4.0', 'v5' => '5.0' ); if (!empty($this->request->post[$this->moduleTitle . '_url']) && !empty($this->request->post[$this->moduleTitle . '_apikey'])) { $apiClient = $this->retailcrm->getApiClient( $this->request->post[$this->moduleTitle . '_url'], $this->request->post[$this->moduleTitle . '_apikey'] ); } $response = $apiClient->apiVersions(); if ($response && $response->isSuccessful()) { if (!in_array($versionsMap[$this->request->post[$this->moduleTitle . '_apiversion']], $response['versions'])) { $this->_error['warning'] = $this->language->get('text_error_api'); } } else { $this->_error['warning'] = $this->language->get('text_error_save'); } if (!$this->user->hasPermission('modify', 'extension/module/retailcrm')) { $this->_error['warning'] = $this->language->get('error_permission'); } if (isset($this->request->post[$this->moduleTitle . '_collector']['custom']) && $this->request->post[$this->moduleTitle . '_collector']['custom_form'] == 1) { $customField = $this->request->post[$this->moduleTitle . '_collector']['custom']; if (empty($customField['name']) && empty($customField['email']) && empty($customField['phone'])) { $this->_error['fields'] = $this->language->get('text_error_collector_fields'); } } if (!$this->_error) { return true; } else { return false; } } Пробовал ставить на чистый OpenCart, та же ошибка, сервер работает на CentOS 7, php 5.6.36, OpenCart 2.3.0.2
  4. Во время работы столкнулся с проблемой, если подключить проверку заполнения обязательных полей id="checkout_validate" не работает оформление, при том что если выбрать наличку или liqpay все работает, в чем может быть проблема ?
  5. Спасибо за наводку, действительно, если в контроллер - чекаут добавить код $data['comment'] = "Не перезванивать мне для подтверждения заказа".$data['comment']; в форме комментария подставляется это значение вместо стандартного текста, а как сделать проверку включенного чекбокса type="checkbox" name="zvonok" ?
  6. Пытаюсь реализовать чекбокс при оформлении заказа, вот сам код : <table> <tr> <input class="zvonokcheckbox" type="checkbox" name="zvonok" id="zvonok" value="1"/> <label class="zvonoktxt" for="zvonok">Не перезванивать мне для подтвержения заказа</label> </tr> </table> Как теперь реализовать так, чтобы при установленной галке, в комментарий автоматически добавлялся текст "Не перезванивать мне для подтверждения заказа". Заранее благодарен за помощь.
  7. Помогите решить последнюю проблему, после того как нажимаешь оформить заказ, перекидывает в корзину где по умолчанию стоит Выберите удобный способ оплаты со значением - Оплата частями (ПриватБанк) , но нет подменю в котором отображается на какое количество месяцев оформляется оплата и при клики на кнопку Подтвердить заказ, ничего не происходит, а вот если выбрать другой тип оплаты и снова в ручную выбрать "Оплата частями (ПриватБанк)" появляется под видом оплаты - Оплата частями на: месяцев, причем с правильным значением из калькулятора и работающей кнопкой Подтвердить заказ. Как сделать так, чтобы это подменю отображалось автоматически если стоит тип оплаты частями или мгновенная рассрочка ? Ниже код из checkout.tpl <?php echo $header; ?> <div class="crumbs"> <ul class="align"> <?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?> <?php if($i+1<count($breadcrumbs)) { ?> <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li> <?php } else { ?> <li><?php echo $breadcrumb['text']; ?></li> <?php } ?> <?php } ?> </ul> </div> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [ <?php foreach ($breadcrumbs as $i=> $breadcrumb) { ?> { "@type": "ListItem", "position": <?php echo $i+1; ?>, "item": { "@id": "<?php echo $breadcrumb['href']; ?>", "name": "<?php echo $breadcrumb['text']; ?>" } }, <?php } ?> ] } </script> <div class="cart align"> <?php echo $cart; ?> <div class="cart__bottom"> <div class="cart__title"><?php echo $heading_title; ?></div> <?php if(!$is_logged) { ?> <div class="form__item"> <div class="cart__link cart-login"><?php echo $button_login; ?></div> </div> <?php } ?> <form id="checkout-form" method="post"> <div class="feedback"> <div class="feedback__left"> <div class="form__item"><input type="text" name="firstname" value="<?php echo $firstname; ?>" placeholder="*<?php echo $entry_firstname; ?>" data-msg="<?php echo $entry_firstname; ?>"></div> <div class="form__item"><input type="text" name="lastname" value="<?php echo $lastname; ?>" placeholder="*<?php echo $entry_lastname; ?>" data-msg="<?php echo $entry_lastname; ?>"></div> <div class="form__item"><input type="text" name="email" value="<?php echo $email; ?>" placeholder="*<?php echo $entry_email; ?>" data-msg="<?php echo $entry_email; ?>"></div> <div class="form__item"><input type="tel" name="telephone" value="<?php echo $telephone; ?>" placeholder="*<?php echo $entry_telephone; ?>" data-msg="<?php echo $entry_telephone; ?>"></div> <?php if(!$is_logged) { ?> <div id="create-account"> <?php echo $checkout_account; ?> </div> <?php } ?> </div> <div class="feedback__right"> <div class="form__item"><textarea name="comment" placeholder="<?php echo $entry_comment; ?>"><?php echo $comment; ?></textarea></div> </div> </div> <div class="cart__ordering"> <div class="cart__delivery"> <div class="cart__title"><?php echo $text_shipping_method; ?></div> <div class="form__item"> <input type="hidden" name="country_id" value="<?php echo $country_id; ?>"> <input type="hidden" name="country" value="<?php echo $country; ?>"> <input type="hidden" name="zone_id" id="shipping_zone_id" value="<?php echo $zone_id; ?>"> <input type="hidden" name="zone_ref" id="shipping_zone_ref" value="<?php echo $zone_ref; ?>"> <select name="zone" id="zone"> <?php foreach ($zones as $zone_item) { ?> <option value="<?php echo $zone_item['name']; ?>" data-zone-ref="<?php echo $zone_item['Ref']; ?>" data-zone-id="<?php echo $zone_item['zone_id']; ?>" <?php if ($zone_item['name'] == $zone) { ?> selected="selected"<?php } ?>><?php echo $zone_item['name']; ?></option> <?php } ?> </select> </div> <div id="shipping_methods"></div> </div> <div class="cart__delivery"> <div class="cart__title"><?php echo $text_payment_method; ?></div> <div id="payment_methods"></div> <div id="payment_confirm" class="cart__payment"> <button class="button button-dark cart-send" id="checkout_validate"><?php echo $button_confirm; ?></button> </div> </div> </div> </form> </div> </div> <div class="cart-login-popup popup"> <div class="popup__close"><svg><use xlink:href="/front/dist/images/sprite.svg#close"></use></svg></div> <form method="post" id="form-login-popup-cart"> <div class="form__item"> <input type="tel" name="phone" placeholder="<?php echo $text_phone; ?>"> </div> <div class="form__item"> <input type="password" name="password" placeholder="<?php echo $text_password; ?>"> </div> <label class="error"></label> <input type="hidden" name="checkout" value="checkout"> <button type="submit" class="button-dark"><?php echo $button_login; ?></button> </form> <a href="<?php echo $href_forgotten; ?>" class="login-popup__forgot"><?php echo $text_forgot_pass; ?></a> <div class="login-popup__text"><?php echo $text_not_account; ?></div> <a href="<?php echo $href_create_account; ?>" class="button-light"><?php echo $button_register; ?></a> </div> <script> document.getElementById("zone").onchange = function () { var zone = $('#zone').val(), zone_ref = this.options[this.selectedIndex].getAttribute("data-zone-ref"), zone_id = this.options[this.selectedIndex].getAttribute("data-zone-id"); document.getElementById("shipping_zone_ref").value = zone_ref; document.getElementById("shipping_zone_id").value = zone_id; $.ajax({ url: '/index.php?route=checkout/shipping/update', type: 'post', data: { 'zone' : zone, 'zone_id' : zone_id, 'zone_ref' : zone_ref }, dataType: 'json', success: function(json) { $('input[name=\'zone\']').next('.error').remove(); if ( json['error'] ) { if ( json['error']['zone'] ) { $('input[name="zone"]').after('<label class="error">' + json['error']['zone'] + '</label>'); } } updateShippingMethods(); // updateShipping(); }, error: function(xhr, ajaxOptions, thrownError) { alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText); } }); }; setTimeout(function () { $('select[name=\'zone\']').trigger('change'); }, 300); </script> <?php echo $footer; ?> Я так понимаю что проблема где-то тут <div id="payment_confirm" class="cart__payment"> <button class="button button-dark cart-send" id="checkout_validate"><?php echo $button_confirm; ?></button> </div>
  8. С количеством разобрался сам, в кнопке в обязательном порядке тип должен быть text, а в шаблоне применялось значение типа number <input type="text" name="quantity" value="<?php echo $minimum; ?>...
  9. Где копать количество товаров которое добавляется в корзину при закрытии формы ? или как отключить эту фичу ?)
  10. Получилось завести кнопку на карточке товара, для этого добавил в footer: <script src="/catalog/view/javascript/bootstrap/js/bootstrap.min.js" type="text/javascript"></script> <link href="catalog/view/javascript/jquery/magnific/magnific-popup.css" rel="stylesheet" type="text/css" media="screen"> <script src="/catalog/view/javascript/jquery/magnific/jquery.magnific-popup.min.js" type="text/javascript"></script> <link href="catalog/view/javascript/jquery/pp_calculator/jquery-ui/jquery-ui.min.css" rel="stylesheet" type="text/css" media="screen"> <script src="catalog/view/javascript/jquery/pp_calculator/jquery-ui/jquery-ui.min.js" type="text/javascript"></script> Так же чтобы не подключать bootstrap.min.css пришлось добавить в стили шаблона: .btn-primary:hover { color: #fff; background-color: #4fdddb; border-color: #204d74; } .btn.focus, .btn:focus, .btn:hover { color: #333; text-decoration: none; } .btn-block { display: block; width: 100%; } btn-group-lg > .btn, .btn-lg { padding: 10px 16px; font-size: 18px; line-height: 1.3333333; border-radius: 6px; } .row { margin-right: -15px; margin-left: -15px; } .col-xs-2 { width: 16.66666667%; } .progress-bar-success { background-color: #5cb85c; } .progress-bar { float: left; width: 0; height: 100%; font-size: 12px; line-height: 20px; color: #fff; text-align: center; background-color: #56ae00; -webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); box-shadow: inset 0 -1px 0 rgba(0,0,0,.15); -webkit-transition: width .6s ease; -o-transition: width .6s ease; transition: width .6s ease; } .progress { height: 20px; margin-bottom: 20px; overflow: hidden; background-color: #f5f5f5; border-radius: 4px; -webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1); box-shadow: inset 0 1px 2px rgba(0,0,0,.1); } .btn-success:hover { color: #fff; background-color: #449d44; border-color: #398439; } .cart__payment { line-height: 5px; padding-left: 15px; } .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9 { float: left; } .form-control { display: block; width: 100%; height: 34px; padding: 6px 12px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #ccc; border-top-color: rgb(204, 204, 204); border-right-color: rgb(204, 204, 204); border-bottom-color: rgb(204, 204, 204); border-left-color: rgb(204, 204, 204); border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075); box-shadow: inset 0 1px 1px rgba(0,0,0,.075); -webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s; } Остался странный баг, если нажать купить товар в кредит, открывается форма с калькулятором и я допустим передумал, решил закрыть калькулятор, то в корзину все равно автоматически добавится данный товар причем в максимальном количестве, допустим на остатке какого-то телефона 25 шт, все 25 штук добавятся в корзину, бывает что в калькулятор автоматически добавляет максимальное количество данного товара и расчет происходит на общую сумму данного товара, хотя кнопка нажималась всего 1 раз. Так же хотелось бы знать, можно ли скрыть кнопку на товары у которых в карточке товара не проставлено ограничение на доступное количество месяцев или значение стоит 0 ? Ограничение по месяцам на каждый товар выгружается с 1С, это единственное что завелось без проблем.
  11. Еще немного поборюсь сам если не выйдет тогда создам аккаунт для доступа. Пока что частично решил проблему. Оказывается js библиотеки в данном шаблоне нужно подключать в футере, только в таком случае они работают. </div> <?php //.wrapper ?> <script src="/front/dist/js/app.js"></script> <script src="/catalog/view/javascript/bootstrap/js/bootstrap.min.js" type="text/javascript"></script> <script src="/catalog/view/javascript/jquery/magnific/jquery.magnific-popup.min.js" type="text/javascript"></script> <script src="/catalog/view/javascript/common.js" type="text/javascript"></script> <?php foreach ($scripts as $script) { ?> <script src="<?php echo $script; ?>" type="text/javascript"></script> <?php } ?> Теперь при нажатии открывается над всей шапкой (header) сайта форма без стилей, ниже прикрепляю скриншот, нужно что-то еще подключить, но не пойму что именно ... При подключении <link href="catalog/view/javascript/bootstrap/css/bootstrap.min.css" type="text/css" rel="stylesheet" media="screen" /> меняются стили сайта и на форму окна привата это ни как не влияет, думаю не принципиально подключать этот стиль.
  12. Методом проб и ошибок выяснил что скрипту мешает что-то в футоре, помогите найти виновника: </div><?php // .wrapper-content ?> <footer class="footer"> <div class="footer__top"> <form class="align footer-form" id="form-subscribe" method="post"> <div class="footer-form__col"> <label class="footer-form__label" for="input-subscribe"><?php echo $text_subscribe1;?> <span><?php echo $text_subscribe2;?></span></label> </div> <div class="footer-form__col"> <input class="footer-form__input" type="text" name="email" placeholder="<?php echo $text_your_email;?>" id="input-subscribe"> <button class="footer-form__btn" type="submit"><?php echo $button_subscribe;?></button> </div> </form> </div> <div class="footer__bottom align"> <?php echo $menu;?> <div class="footer__item"> <div class="footer__title"><?php echo $text_contact;?></div> <?php if($telephone || $telephone_2) { ?> <div class="footer__contact"> <?php if($telephone) { ?> <div><a href="tel:<?php echo $telephone[0];?>"><?php echo $telephone[1];?></a></div> <?php } ?> <?php if(isset($telephone_2[1]) && !empty($telephone_2[1])) { ?> <div><a href="tel:<?php echo $telephone_2[0];?>"><?php echo $telephone_2[1];?></a></div> <?php } ?> </div> <?php } ?> <div class="header-top__item order-call"><?php echo $text_callback;?></div> <div class="footer__contact"> <div><a href="mailto:<?php echo $email;?>"><?php echo $email;?></a></div> </div> <?php if($open) { ?> <div class="footer__contact"> <div><?php echo $text_open; ?></div> <div><?php echo $open;?></div> </div> <?php } ?> </div> <div class="footer__item"> <div class="footer__title"><?php echo $text_social;?></div> <?php echo $social_list;?> <div class="footer__app"> <div class="footer__app-text"><?php echo $text_application;?></div> <a href="<?php echo $google_play;?>" target="_blank" class="footer__app-img"><img src="/front/dist/images/app.jpg" width="140" height="42" alt="Play Market"></a> </div> </div> </div> <div class="footer__copy"><?php echo $powered; ?></div> </footer> <div class="overlay"></div> <div class="thanks-popup popup"> <div class="popup__close"><svg><use xlink:href="/front/dist/images/sprite.svg#close"></use></svg></div> <div class="thanks-popup__title"></div> <div class="thanks-popup__subtitle"></div> </div> <div class="add-popup"> </div> <div class="order-popup"> <div class="popup__close"><svg><use xlink:href="/front/dist/images/sprite.svg#close"></use></svg></div> <div class="click-popup__title"><?php echo $text_on_order_title; ?></div> <div class="click-popup__subtitle"><?php echo $text_on_order_subtitle; ?></div> <form action="<?php echo $action_on_order; ?>" method="post" id="form-on-order"> <div class="form__item"> <input type="text" name="name" value="<?php echo $customer_name; ?>" placeholder="<?php echo $entry_name; ?>*"> </div> <div class="form__item"> <input type="tel" name="phone" value="<?php echo $customer_phone; ?>" placeholder="<?php echo $entry_phone; ?>*"> </div> <input type="hidden" name="product_id" value=""> <button type="submit" class="button-dark"><?php echo $button_send; ?></button> </form> </div> <div class="call-popup popup"> <div class="popup__close"><svg><use xlink:href="/front/dist/images/sprite.svg#close"></use></svg></div> <div class="click-popup__title"><?php echo $text_callback_title; ?></div> <div class="click-popup__subtitle"><?php echo $text_callback_subtitle; ?></div> <form action="<?php echo $action_callback; ?>" method="post" id="form-callback"> <div class="form__item"> <input type="text" name="name" value="<?php echo $customer_name; ?>" placeholder="<?php echo $entry_name; ?>"> </div> <div class="form__item"> <input type="tel" name="phone" value="<?php echo $customer_phone; ?>" placeholder="<?php echo $entry_phone; ?>"> </div> <button type="submit" class="button-dark"><?php echo $button_callback; ?></button> </form> </div> <div class="login-popup-center popup"> <div class="popup__close"><svg><use xlink:href="/front/dist/images/sprite.svg#close"></use></svg></div> <div class="click-popup__title"><?php echo $text_account_title; ?></div> <form method="post" id="form-login-popup-center"> <div class="form__item"> <input type="tel" name="phone" placeholder="<?php echo $text_phone; ?>"> </div> <div class="form__item"> <input type="password" name="password" placeholder="<?php echo $text_password; ?>"> </div> <label class="error"></label> <button type="submit" class="button-dark"><?php echo $button_login; ?></button> </form> <a href="<?php echo $forgotten; ?>" class="login-popup__forgot"><?php echo $text_forgot_pass; ?></a> <div class="login-popup__text"><?php echo $text_not_account; ?></div> <a href="<?php echo $register; ?>" class="button-light"><?php echo $button_register; ?></a> </div> <div class="order-overlay"></div> </div> <?php //.wrapper ?> <script src="/front/dist/js/app.js"></script> <?php foreach ($scripts as $script) { ?> <script src="<?php echo $script; ?>" type="text/javascript"></script> <?php } ?> <script src="/catalog/view/javascript/common.js" type="text/javascript"></script> </body> </html>
  13. Добавил в /catalog/view/theme/default/template/common/header.tpl <script src="/catalog/view/javascript/bootstrap/js/bootstrap.min.js" type="text/javascript"></script> , в отладке вижу что bootstrap.min.js подгружается, но ошибка не изменилась, что еще можно сделать ?
  14. Нужна помощь, OpenCart 2.3.0.2, при подключении модуля на тестовый сайт в карточке товара появилась кнопка "Купить в кредит", но при нажатии ничего не происходит, в отладчике пишет (TypeError: $(...).button is not a function ( beforeSend http://shop.kibernetiki.com.ua/smartfon-samsung-galaxy-s9-g965f-64gb-purple:1753:7 ajax http://shop.kibernetiki.com.ua/front/dist/js/app.js:3:15500 <анонимная> http://shop.kibernetiki.com.ua/smartfon-samsung-galaxy-s9-g965f-64gb-purple:1747:3 dispatch http://shop.kibernetiki.com.ua/catalog/view/javascript/jquery/jquery-2.1.1.min.js:3:6352 add/r.handle http://shop.kibernetiki.com.ua/catalog/view/javascript/jquery/jquery-2.1.1.min.js:3:3162 ) ) Что можно попробовать сделать для решения данной проблемы ?
×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.