Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- if (vtexjs.checkout.orderForm.items.length > 0) {
- var div = $("div#seller-code");
- if (div.length == 0) {
- $(".full-cart .summary-coupon-wrap.text-center").append(
- $("<div>", { id: "seller-code" })
- .append(
- $("<div>", { class: "form-seller-code" })
- .append(
- $("<p>", {
- class: "label-seller-code",
- text: "Código do vendedor(a)",
- }),
- )
- .append(
- $("<div>", { class: "content-seller-code" })
- .append(
- $("<input>", { name: "seller-code", class: "seller-code" }),
- )
- .append(
- $("<div>", {
- class: "seller-code-error",
- text: "CÓDIGO INVÃLIDO",
- }),
- ),
- )
- .append($("<button>", { class: "btn", text: "Adicionar" })),
- )
- .append(
- $("<div>", { class: "seller-code-active" })
- .append(
- $("<p>", { class: "label-seller-code", text: "Vendedor(a)" }),
- )
- .append(
- $("<a>", { class: "btn remove-seller-code", text: "" })
- .append($("<span>", { class: "label-seller-name" }))
- .append($("<i>", { class: "icon-remove" })),
- ),
- ),
- );
- }
- removeSellerCode();
- const urlParams = new URLSearchParams(window.location.search);
- const utmCampaign = urlParams.get("utm_campaign");
- const utmMedium = urlParams.get("utm_medium");
- const utmSource = urlParams.get("utm_source");
- const vendedor = urlParams.get("vd");
- //Função para setar parâmtros Utm no orderForm
- const getUtmParams = () => {
- const mktData =
- vtexjs.checkout.orderForm.marketingData != null
- ? vtexjs.checkout.orderForm.marketingData
- : {
- coupon: "",
- marketingTags: [],
- utmSource: null,
- utmMedium: null,
- utmCampaign: null,
- utmiPage: null,
- utmiPart: null,
- utmiCampaign: null,
- };
- mktData.utmSource = utmSource;
- mktData.utmCampaign = utmCampaign;
- mktData.utmMedium = utmMedium;
- if (
- vendedor !== null &&
- (mktData.utmiCampaign === null || mktData.utmiCampaign === "0")
- ) {
- mktData.utmiCampaign = vendedor;
- }
- if (!vendedor && !mktData.utmiCampaign) {
- mktData.utmiCampaign = "0";
- }
- vtexjs.checkout.sendAttachment("marketingData", mktData);
- };
- if (utmCampaign || utmMedium || utmSource || vendedor) {
- getUtmParams();
- }
- $(".full-cart .summary-coupon-wrap").toggleClass("span7", "span4");
- setClickPesquisar();
- $(window).on("orderFormUpdated.vtex", function (e, orderForm) {
- if (!orderForm.items.length) {
- $("div#seller-code").remove();
- }
- });
- var buscaSellerCode = function (code) {
- $(".content-seller-code").removeClass("error");
- $.ajax({
- url:
- "//api.vtexcrm.com.br/redley/dataentities/VD/search/?_fields=id,cod,name&cod=" +
- code,
- dataType: "json",
- type: "GET",
- headers: {
- Accept: "application/vnd.vtex.ds.v10+json",
- "Content-Type": "application/json; charset=utf-8",
- },
- }).done(function (data) {
- if (data.length) {
- $("#text-loading").text("Aplicando promoções");
- vtexjs.checkout.getOrderForm().then(function (orderForm) {
- vtexjs.checkout
- .sendAttachment("marketingData", {
- coupon: $("#cart-coupon").val(),
- utmiCampaign: data[0].cod,
- })
- .done(function () {
- vtexjs.checkout
- .sendAttachment("openTextField", {
- value:
- "VENDEDOR: Nome:" +
- data[0].name +
- " - Codigo:" +
- data[0].cod,
- })
- .done(function () {
- localStorage.setItem("sellerInfo", JSON.stringify(data[0]));
- vtexjs.checkout.getOrderForm().then(function (orderForm) {
- $("div#seller-code").addClass("active");
- $("div#seller-code").html(
- `<div class="seller-code-active"><p class="label-seller-code">Vendedor(a)</p><a class="btn remove-seller-code"><span class="label-seller-name">${data[0].name}</span><i class="icon-remove"></i></a></div>`,
- );
- removeSellerCode();
- });
- });
- });
- });
- } else {
- $(".content-seller-code").addClass("error");
- $(".carregando-seller").remove();
- }
- });
- };
- if (localStorage.getItem("sellerInfo")) {
- var sellerInfo = JSON.parse(localStorage.getItem("sellerInfo"));
- $("div#seller-code .label-seller-name").text(sellerInfo.name);
- $("div#seller-code").addClass("active");
- if (sellerInfo != undefined) {
- vtexjs.checkout.getOrderForm().then(function (orderForm) {
- vtexjs.checkout
- .sendAttachment("marketingData", {
- coupon: $("#cart-coupon").val(),
- utmiCampaign: sellerInfo.cod,
- })
- .done(function () {
- vtexjs.checkout
- .sendAttachment("openTextField", {
- value:
- "VENDEDOR: Nome:" +
- sellerInfo.name +
- " - Codigo:" +
- sellerInfo.cod,
- })
- .done(function () {
- vtexjs.checkout.getOrderForm().then(function (orderForm) {});
- });
- });
- });
- }
- } else if (location.search.split("vd=")[1]) {
- var code = location.search.split("vd=")[1].split("&")[0];
- buscaSellerCode(code);
- }
- function removeSellerCode() {
- $("div#seller-code .remove-seller-code").on("click", function (e) {
- e.preventDefault();
- localStorage.removeItem("sellerInfo");
- $("div#seller-code").removeClass("active");
- vtexjs.checkout.getOrderForm().then(function (orderForm) {
- vtexjs.checkout
- .sendAttachment("marketingData", { utmiCampaign: "0" })
- .done(function () {
- vtexjs.checkout
- .sendAttachment("openTextField", { value: " sem vendedor" })
- .done(function () {
- vtexjs.checkout.getOrderForm().then(function (orderForm) {
- $(".carregando-seller").remove();
- });
- });
- });
- });
- addSellerCode();
- });
- }
- function addSellerCode() {
- $("div#seller-code").html(`
- <div class="form-seller-code">
- <p class="label-seller-code">Código do vendedor(a)</p><div class="content-seller-code">
- <input name="seller-code" class="seller-code">
- <div class="seller-code-error">CÓDIGO INVÃLIDO</div></div>
- <button class="btn">Adicionar</button></div>`);
- $("div#seller-code").append(
- "<div class='carregando-seller'><img src='https://redley.vteximg.com.br/arquivos/v2-redley-loading.gif' class='img-loading' /><span> Removendo vendedor(a) e promoções </span></div>",
- );
- setClickPesquisar();
- }
- function setClickPesquisar() {
- $("div#seller-code button").on("click", function (e) {
- e.preventDefault();
- var valueCode = $("div#seller-code .seller-code").val();
- if (valueCode == "") {
- Swal.fire({
- icon: "warning",
- title: "Oops...",
- text: "Preencha o código de vendedor(a).",
- confirmButtonColor: "black",
- });
- } else {
- $("div#seller-code").append(
- "<div class='carregando-seller'><img src='https://redley.vteximg.com.br/arquivos/v2-redley-loading.gif' class='img-loading' /><span id='text-loading'> Verificando vendedor(a) </span></div>",
- );
- buscaSellerCode(valueCode);
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement