SHOW:
|
|
- or go back to the newest paste.
1 | function prettyText(x){ | |
2 | return x.replaceAll('+', ' ') | |
3 | .replaceAll('%2C', ',') | |
4 | .replaceAll('%C5%A0', '\u0160') //Š | |
5 | .replaceAll('%C5%A1', '\u0161') //š | |
6 | .replaceAll('%C4%8D', '\u010D') //č | |
7 | .replaceAll('%C4%8C', '\u010C') //Č | |
8 | .replaceAll('%C4%87', '\u0107') //ć | |
9 | .replaceAll('%C4%86', '\u0106') //Ć | |
10 | .replaceAll('%C7%84', '\u01C4') //DŽ | |
11 | .replaceAll('%C7%86', '\u01C6') //dž | |
12 | .replaceAll('%C4%91', '\u0111') //đ | |
13 | .replaceAll('%C4%90', '\u0110') //Đ | |
14 | .replaceAll('%C5%BE', '\u017E') //ž | |
15 | .replaceAll('%C5%BD', '\u017D');//Ž | |
16 | } | |
17 | ||
18 | function extractPrice(x){ | |
19 | var pattern = '(\"total\"):((\d*\.?\d*)+)'; | |
20 | const found = x.match(pattern); | |
21 | var newNumber = found[2]; | |
22 | var p = newNumber.match(/[\d\.]+/); | |
23 | ||
24 | return p[0]; | |
25 | } | |
26 | ||
27 | ||
28 | window.dataLayer = window.dataLayer || []; | |
29 | window.dataLayer.push({ | |
30 | event: 'purchase', // name of the event. In this case, it always must be purchase | |
31 | ecommerce: { | |
32 | currency: '{CURRENCY}', | |
33 | value: '{TOTAL}', // order total (price of total reservations | |
34 | transaction_id: '{RESV}', // transaction id | |
35 | coupon: '{PROMOCODE}', // if coupon was applied to the reservation, include it here | |
36 | items: [{ // an array with all accommodation units | |
37 | item_name: prettyText('{ROOMNAME}'), // insert an actual accommodation unit name | |
38 | item_id: '{ROOMID}', // insert an actual accommodation ID | |
39 | price: extractPrice('{MULTIROOM}'), // insert an actual product price. Number or a string. Don't include currency code | |
40 | item_category: prettyText('{HOTELNAME}'), // insert an actual accommodation unit's top-level category | |
41 | item_category2: prettyText('{RATENAME}'), // insert rate category | |
42 | quantity: '1', // product quantity, hardcoded value | |
43 | arrival_date: '{CHECKIN}', // insert check-in date | |
44 | departure_date: '{CHECKOUT}', // insert check-out date | |
45 | booked_nights: '{NIGHTS}', // insert total number of nights | |
46 | number_of_adults: '{ADULTS}', // insert total number of adults | |
47 | - | number_of_children: '{CHD}', // insert total number of children |
47 | + | number_of_children: '{CHD}', // insert total number of children |
48 | - | |
48 | + | |
49 | - | },{ |
49 | + | |
50 | }); |