Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

[Решено] Добавить в common.js переменную из language


Recommended Posts

Все доброго дня

Opencart version: 3.0.2.0

 

в cart.twig изменил кнопку корзины
 

<button type="button" data-toggle="dropdown" data-loading-text="{{ text_loading }}" id="btn1" class="btn btn-lg"><div class="row"><span id="cart-total">{{ text_items }}</span></div> <div class="row"><img src="image/icons/r3.png" id="cartimg"></div>{{ text_sebet }}</button>

где {{ text_sebet }} добавил значения в языках. В HomePage все правильно показывает. Но при обновлении или добавлении товара не показывает значение {{ text_sebet }}

 

Для этого в catalog/view/javascript/common.js изменил строку где изменяет кнопку корзины
 

$('#cart > button').html('<div class="row"><span id="cart-total"> ' + json['total'] + '</span></div><div class="row"><img src="image/icons/r3.png" id="cartimg"></div>');

Как мне добавить {{ text_sebet }} в этот js файл? Пробовал добавить php код, пробовал приравнять к var foo = '{{ text_sebet }}'; и добавить переменную foo, но или не выходит текст или ошибка кода.

 

Спасибо заранее за помощь

Link to comment
Share on other sites


@nikifalex в catalog/controller/common/header.php 

$data['text_sebet'] = $this->language->get('text_sebet');

в catalog/language/moi_yaziki/common/header.php и footer.php добавил

$_['text_sebet']          = 'Корзина';

В HomePage все окей и вызваю значение при вводе {{text_sebet}}

Как вызвать в common.js что бы при действии тоже выводилось значение {{text_sebet}}

Edited by Orkh3ll0
Link to comment
Share on other sites


@nikifalex я могу нормально выводить на экран в .twig файлах, но не знаю как вызвать его в .js файле

.js не выводит значение при вводе {{text_sebet}}

 

Edited by Orkh3ll0
Link to comment
Share on other sites


Добавил в header.twig

<input type="hidden" value="{{ text_sebet }}" id="pprts" />

Добавил в common.js  файл var sebet =$("#pprts").val(); 

 и в строку вывода кнопки добавил sebet. результат "undefined"

$('#content').parent().before('<div class="alert alert-success alert-dismissible"><i class="fa fa-check-circle"></i> ' + json['success'] + ' <button type="button" class="close" data-dismiss="alert">&times;</button></div>'+sebet+'');

 

Link to comment
Share on other sites


@Orkh3ll0 используйте json, у вас же есть перед глазами пример, как выводится сообщение об успешном добавлении товара в корзину, значит делайте так же - если нужен вывод своего текста при успешном добавлении товара в корзину, то в контроллере корзины добавьте куда-нибудь после 

$json['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . $this->request->post['product_id']), $product_info['name'], $this->url->link('checkout/cart'));

свой код, например

$json['test'] = "test";

А дальше в common.js внутри if (json['success']) { выводитесь через json['test']

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...

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.