First integration option
Tip |
---|
For successful integration of this button, you need to add several lines of JS-code to the place, where you would like to display the button. The minimum amount of integration code is: |
Code Block | ||
---|---|---|
| ||
<script class="wizart__entryfloating-pointbutton" data-token="token" src="https://wizart-filesd35so7k19vd0fx.fra1cloudfront.digitaloceanspaces.comnet/production/integration/floating-button.min.js"></script> |
Floating button maintains the following parameters:
Code Block | ||
---|---|---|
| ||
<script class="wizart__floating-button" data-title="Custom button title" data-token="token" data-vendor_code="" data-article_query="" data-parameters="" data-background="" data-tooltip_color="" data-image="" data-tooltip-title="" data-tooltip_-position="" data-tooltip_-disable="" data-glitter_-disable="" data-width="" data-height="" data-border="" data-border_radius="" data-class_name="" data-compact="" data-tutorial="" data-tutorial-delay="" data-on-button-click="" data-element-selector="" data-insert-element-position="" data-iframe-element-selector="" data-insert-iframe-element-position="" src="https://d35so7k19vd0fx.cloudfront.net/production/integration/floating-button.min.js" ></script> |
Parameter | Description | Type |
---|---|---|
class | Required parameter. | required |
src | Link to js-file with integration code. | required |
data-token | api token - generated and issued by Wizart Administrator. | required |
data-title | Text to be displayed on the button (the default value is "Try it in your room in one click!"). | optional |
data-vendor_code | Unique SKU ID of the product uploaded to Wizart system. | optional |
data-article_query | Required in the case if parameter data-vendor_code is not enough for product search in the Wizart system. Parameter value should be a result of the function | optional |
data-background | Button background | optional |
data- |
color | Button text color | optional |
data-tooltip-disable | If the value is “true”, the tooltip will not be displayed. | optional |
data-tooltip |
-title | Text to be displayed on the tooltip (the default value is "See it in your room!"). | optional |
data-tooltip |
-position | Tooltip position towards the button. Available values are top, right, bottom, left (the default value is top) | optional |
data-glitter |
-disable | If the value is true, glitter will not be displayed | optional |
data-width |
Max button width | optional | |
data-height | Button height | optional |
data-border | Button border | optional |
data-border_radius | Button border-radius | optional |
data-image | Link to the icon that will be displayed on the button. | optional |
data-class_name | Class to be set for the button element on the page | optional |
data-compact | If the value is true, button will be displayed in the compact mode | optional |
data-tutorial | If the value is true and data-compact is true, the button will be animated: from the compact to the full mode and then back to compact mode. Animation repeats only once. | optional |
data-tutorial-delay | Period of time before the animation is activated. | optional |
data-parameters | Parameter value should be a result of the function | optional |
data-onload-callback | The name of the function to be in the global scope. The function will be called when the visualizer is loaded. | Optional |
data-on-close-callback | The name of the function to be in the global scope. The function will be called after the visualizer is closed. | Optional |
data-element-selector | A CSS selector to select an element on the page to insert a button where you want. | Optional |
data-insert-element-position | The insertion position of the element. Values: append, before, after. default value: append. | Optional |
data-iframe-element-selector | A CSS selector to select an element on the page to insert the fitting room where you want. | Optional |
data-insert-iframe-element-position | The insertion position of the element. Values: append, before, after. default value: append. | Optional |
Additional parameters for “data-parameters” attribute
Parameter | Description |
---|
user_id | |
context | |
main_page_link | Link added to your |
menu_items
Additional fields in the menu in format: [{ title: string }].
do_not_show_info_about_app
If the value is 1, the menu item “About the application“ will not be displayed.
original_url
Link to the page. This link is required for redirecting from posts shared on social media.
twitter_mention
clickable logo. |
Two-way shopping cart synchronization:
When the visualizer is open, methods are added to the window.wizartDK to synchronize the shopping cart.
Setting the current state of items in the shopping cart –
setShoppingCartStore
. To transfer the current state of the shopping cart to the visualizer, call the methodCode Block language js const payload = [{vendor_code: 'vendor_code1', quantity: 1 }]; window.wizartDK.setShoppingCartStore(payload);
The method is available after opening the visualizer.
Getting the current state of items in the shopping cart –
getShoppingCartStore
. To get the items in the shopping cart, call thegetShoppingCartStore
method with a callback function. The callback function will receive the items in the shopping cart. The method is available after opening the visualizer.Code Block language js const callback = () => { console.log(payload); // [{vendor_code: 'vendor_code1', quantity: 1}, ...] } window.wizartDK.getShoppingCartStore(callback);
Removing an item from the shopping cart –
onRemoveShoppingCartItem
. To get the goods when they are removed, you must call theonRemoveShoppingCartItem
method with a callback function. The method is available after opening the visualizer.Code Block language js const callback = () => { console.log(payload); // { vendor_code: 'vendor_code', removeAll: true } } window.wizartDK.onRemoveShoppingCartItem(callback);
Adding an item to the shopping cart –
onAddShoppigCartItem
. To add a product, you need to call theonAddShoppigCartItem
function with a parameter{ vendor_code: 'vendor_code' }
. The method is available after opening the visualizer.Code Block window.wizartDK.onAddShoppigCartItem({ vendor_code: 'vendor_code' });
Second integration option:
Tip |
---|
To get this button successfully integrate, you need to include the following library in the header of your website: |
Code Block |
---|
<script type="application/javascript" src="https://d35so7k19vd0fx.cloudfront.net/production/integration/floating-button.min.js"></script> |
Tip |
---|
To initialize the button, you need to call this code with a token, element and vendor code or article query: |
Code Block |
---|
const floatingButton = new window.WFloatingButton({
token: "your token for wizart",
element: "link to the element to insert the entry point button", // example document.getElementById("0000")
vendorCode: "vendor code for first apply",
articleQuery: Json.stringify({
vendor_code: 'vendor code for first apply',
collection_name: '',
}),
}); |
Info |
---|
Element |
Tip |
---|
To display the button, you need to call the render method. |
Code Block |
---|
floatingButton.render(); |
The following parameters can be passed to the render method:
Code Block |
---|
fontSize,
title,
tooltipTitle,
tooltipPosition,
tooltipDisable,
glitterDisable,
className,
borderRadius,
parameters,
background,
color,
width,
height,
border,
image,
compact,
tutorial,
tutorialDelay,
onloadCallback,
onCloseCallback,
onButtonClick,
iframeElementSelector,
insertIframeElementPosition,
onAddShoppigCartItem, // the function is called on the event of adding an article to the cart
onRemoveShoppingCartItem, // the function is called on the event of deleting an article to the cart
|
Code Block |
---|
const onAddShoppigCartItem = (payload) => {
console.log(payload);
// { item: { vendor_code: 'vendor_code' }};
}
const onRemoveShoppingCartItem = () => {
console.log(payload);
// { item: { vendor_code: 'vendor_code', removeAll: true }};
} |
Info |
---|
The set method can be used to set vendorCode or articleQuery. |
Code Block |
---|
floatingButton.set({ vendorCode: '' });
floatingButton.set({ articleQuery: Json.stringify({ vendor_code: '' })}); |
Info |
---|
The |
Code Block | ||
---|---|---|
| ||
floatingButton.setShoppingCartStore(payload);
// payload format [{vendor_code: 'vendor_code', quantity: 1 }, ...] |