Вспомогательные методы
Объект Shop даёт формат цены, настройки страницы, данные покупателя и отправку сообщений, отзывов и комментариев.
Shop.money.format
Форматирование суммы по настройкам валюты магазина.
/*
* @param {string|number} amount - сумма
* @param {boolean} [formatRouble] - если передан, копейки отбрасываются
*
* @return {string}
*/
Shop.money.format(1234.00);
// 1 234 руб.
Shop.money.set() больше не нужен: формат читается со страницы сам.
Shop.units.getName
Название единицы измерения по её коду.
Shop.units.getName('kgm');
Shop.config
get
Настройки магазина со страницы. Если передать имя поля или список имён, вернётся объект только с этими полями.
Shop.config.get();
Shop.config.get('currency_code');
// { currency_code: "RUR" }
getProductId
Id товара на карточке. На остальных страницах метод пишет предупреждение и возвращает null.
Shop.config.getProductId();
// на странице товара вернет -> "70513124"
Прежнее имя Shop.config.getProducId() даёт тот же результат.
getArticleId
Id статьи на странице блога. На остальных страницах метод пишет предупреждение и возвращает null.
Shop.config.getArticleId();
setParam
Записать значение в конфигурацию на время текущей страницы.
Shop.config.setParam('my_flag', true);
Shop.pageData.get
Данные текущей страницы. Аргумент такой же, как у Shop.config.get: ничего, одно поле или список полей.
Shop.pageData.get();
Shop.client
Shop.client.get()
.done(function (result) { console.log(result); });
Shop.client.login({
email: 'user@mail.ru',
password: 'secret'
})
.done(function (client) { console.log(client); })
.fail(function (errors) { console.log(errors); });
Shop.client.logout()
.done(function (result) { console.log(result); });
Сообщения, отзывы и комментарии
Методы возвращают Deferred.
Shop.sendMessage({
from: 'json@test.ru',
name: 'Имя',
subject: 'Тема',
content: 'Текст',
phone: '+70000000000'
})
.done(function (response) { console.log(response); })
.fail(function (error) { console.log(error); });
Shop.sendReview({
author: 'Покупатель',
email: 'user@mail.ru',
content: 'Текст отзыва',
rating: 5
}, {
id: 70513124
});
Shop.sendComment({
author: 'Читатель',
email: 'user@mail.ru',
content: 'Текст комментария'
}, {
url: '/blogs/blog/aktsiya'
});
Shop.getProductReviews(70513124)
.done(function (reviews) { console.log(reviews); });
Shop.getArticleComments()
.done(function (comments) { console.log(comments); });
getProductReviews без аргумента берёт id с карточки товара. getArticleComments без аргумента берёт id со страницы статьи. Если в отзыве есть изображение, sendReview отправляет его вместе с текстом.