","url":"/fighting-loyalty","byline":"Abigail A. Lorden","sponsored":false,"blogSeries":{"url":"/editor","title":"From the Editor","icon":null,"author":{"email":"jay@ashday.com","uname":"jkerschner","firstName":"Ashday","lastName":"Developer","bio":null,"title":null,"picture":null,"phone":null,"contactForm":false},"iconBackground":null},"author":{"email":"devteam@ashday.com","uname":"ht_root","firstName":null,"lastName":null,"bio":null,"title":null,"picture":null,"phone":null,"contactForm":null},"date":"2008-08-10T00:00:00","digitalEdition":null,"hideByline":null,"teaserImage":null,"topics":[{"name":"Customer Relationship Management (CRM)","url":"/customer-relationship-management-crm"},{"name":"Loyalty","url":"/loyalty"},{"name":"Reservations","url":"/reservations"},{"name":"Lodging","url":"/lodging"},{"name":"Hotel Management","url":"/hotel-management"},{"name":"Hotel Brand -- Business Class","url":"/hotel-brand-business-class"},{"name":"Hotel Brand -- Economy Class","url":"/hotel-brand-economy-class"},{"name":"Hotel Brand -- Major","url":"/hotel-brand-major"},{"name":"Platforms","url":"/platforms"},{"name":"Hotel Brand -- Boutique/Lifestyle","url":"/hotel-brand-boutiquelifestyle"},{"name":"Hotels","url":"/hotels"}],"attachedFiles":[]},{"title":"Best Western's 550+ PMS Rollout to Support Guest Loyalty Program ","id":7547,"bundle":"article","summary":"Best Western International is set to rollout a new property management system interface from MSI that will support their Gold Crown Club International (GCCI) guest loyalty program in over 550 properties.","showSummary":null,"url":"/best-westerns-550-pms-rollout-support-guest-loyalty-program","date":"2008-08-01T00:00:00","author":{"email":"devteam@ashday.com","uname":"ht_root","firstName":null,"lastName":null,"bio":null,"title":null,"picture":null,"phone":null,"contactForm":null},"digitalEdition":null,"sponsored":false,"taggedPro":null,"teaserImage":null,"topics":[{"name":"Customer Relationship Management (CRM)","url":"/customer-relationship-management-crm"},{"name":"Customer Experience/Service","url":"/customer-experience-service"},{"name":"Loyalty","url":"/loyalty"},{"name":"Property Management Systems","url":"/property-management-systems"},{"name":"Lodging","url":"/lodging"},{"name":"Hotel Management","url":"/hotel-management"},{"name":"Hotel Brand -- Business Class","url":"/hotel-brand-business-class"},{"name":"Hotel Brand -- Economy Class","url":"/hotel-brand-economy-class"},{"name":"Hotel Brand -- Major","url":"/hotel-brand-major"},{"name":"Integration","url":"/integration"},{"name":"Hotels","url":"/hotels"}],"attachedFiles":[]},{"title":"Ypartnership and Acuity Mobile to Develop Joint Mobile Marketing Programs","id":7564,"bundle":"article","summary":"Ypartnership and Acuity Mobile announce that they will partner to develop mobile marketing programs for clients in the travel, leisure and entertainment industries. Clients will be able to create targeted mobile marketing campaigns to leverage customer relationships, preferences and demographic data.","showSummary":null,"url":"/ypartnership-and-acuity-mobile-develop-joint-mobile-marketing-programs","date":"2008-07-24T00:00:00","author":{"email":"devteam@ashday.com","uname":"ht_root","firstName":null,"lastName":null,"bio":null,"title":null,"picture":null,"phone":null,"contactForm":null},"digitalEdition":null,"sponsored":false,"taggedPro":null,"teaserImage":null,"topics":[{"name":"Sales & Marketing","url":"/sales-marketing"},{"name":"Loyalty","url":"/loyalty"},{"name":"Mobile Devices & Apps","url":"/mobile-devices-apps"},{"name":"Restaurants","url":"/restaurants"},{"name":"Coffee Bar","url":"/coffee-bar"},{"name":"Family Casual Dining","url":"/family-casual-dining"},{"name":"Fast Casual Dining","url":"/fast-casual-dining"},{"name":"Fine Dining","url":"/fine-dining"},{"name":"Juice Bar","url":"/juice-bar"},{"name":"Lodging","url":"/lodging"},{"name":"Casino","url":"/casino"},{"name":"Cruise Line","url":"/cruise-line"},{"name":"Hotel Management","url":"/hotel-management"},{"name":"Hotel Brand -- Business Class","url":"/hotel-brand-business-class"},{"name":"Hotel Brand -- Economy Class","url":"/hotel-brand-economy-class"},{"name":"Hotel Brand -- Major","url":"/hotel-brand-major"},{"name":"Hotel Brand -- Boutique/Lifestyle","url":"/hotel-brand-boutiquelifestyle"},{"name":"Hotels","url":"/hotels"}],"attachedFiles":[]},{"title":"Loews Hotels Revamp Guest Loyalty Program","id":7566,"bundle":"article","summary":"Loews Hotels' new guest incentive program is based on stays, not points. Free Internet, late checkout, guaranteed rooms and upgrades are among the incentives that guests can quality for after a minimum of two visits per year.","showSummary":null,"url":"/loews-hotels-revamp-guest-loyalty-program","date":"2008-07-24T00:00:00","author":{"email":"devteam@ashday.com","uname":"ht_root","firstName":null,"lastName":null,"bio":null,"title":null,"picture":null,"phone":null,"contactForm":null},"digitalEdition":null,"sponsored":false,"taggedPro":null,"teaserImage":null,"topics":[{"name":"Customer Experience/Service","url":"/customer-experience-service"},{"name":"Loyalty","url":"/loyalty"},{"name":"Lodging","url":"/lodging"},{"name":"Hotel Management","url":"/hotel-management"},{"name":"Hotel Brand -- Business Class","url":"/hotel-brand-business-class"},{"name":"Hotel Brand -- Major","url":"/hotel-brand-major"},{"name":"Hotels","url":"/hotels"}],"attachedFiles":[]}]},"title":"Loyalty","contentParagraphs":null,"sections":null}; const country = "US"; const language = null; const SITE_LANGUAGE = "en"; const siteName = "Hospitality Technology"; const userRoles = ["anonymous"]; const userUid = 0; const indexName = "HT"; const title = "Loyalty | Hospitality Technology"; window.dataLayer = window.dataLayer || []; const data = {}; data.entityTaxonomy = {}; const contentTypes = [ "article", "blog", "bulletin", "embed_page", "landing_page", "event", "image", "page", "product", "whitepaper", "video", "tags", "author_profile", "buyers_guide_listing" ]; if ( routeInfo && "bundle" in routeInfo && contentTypes.includes(routeInfo["bundle"]) ) { data.entityBundle = routeInfo.bundle; data.entityTitle = title || `${routeInfo.title} | ${siteName}`; data.entityId = routeInfo.id; data.entityName = routeInfo.author?.uname; data.entityCreated = routeInfo.created; data.sponsored = routeInfo.sponsored; data.sponsor = routeInfo.sponsoringCompany; data.entityType = "node"; data.entityLangcode = SITE_LANGUAGE; data.siteName = siteName; data.drupalLanguage = language; data.drupalCountry = country; data.userRoles = userRoles; data.userUid = userUid; data.entityTaxonomyKeys = {}; data.entityTaxonomyHierarchies = {}; data.parentNaicsCode = {}; data.isPro = false; data.algoliaIndexName = indexName; // Add taxonomy data const taxonomies = { businessTopic: "business_topic", contentType: "content_type", company: "company", marketSegment: "market_segment", }; const getHierarchy = (term, terms = []) => { terms.push({ id: term.id, name: term.name }); if (term.parentTerm != null) { getHierarchy(term.parentTerm, terms); } return terms; }; const getTerms = (term, useApiId = false) => { return { id: useApiId ? term.apiId : term.id, name: term.name }; }; const getKeys = (term) => { return { id: term.id, name: term.apiId }; }; Object.entries(taxonomies).forEach(([key, item]) => { terms = routeInfo[key]; if (terms && terms.length > 0) { data["entityTaxonomy"][item] = terms.map((term) => getTerms(term, key === "company") ); if (key !== "company") { data["entityTaxonomyKeys"][item] = terms.map(getKeys); termGroups = []; terms.forEach((term, termInd) => { termGroups[termInd] = getHierarchy(term); }); data["entityTaxonomyHierarchies"][item] = termGroups; } } }); data["entityTaxonomy"]["tags"] = routeInfo["topics"] || []; // Primary Topic is either the business topic or the top tag. if (routeInfo["businessTopic"]?.length > 0) { data["entityPrimaryTopic"] = routeInfo["businessTopic"][0]["name"]; } else { if (routeInfo["topics"]?.length > 0) { data["entityPrimaryTopic"] = routeInfo["topics"][0]["name"]; } } // Primary and secondary entityNaicsCodes come from the MarketSegment if (routeInfo.marketSegment?.length > 0) { data.entityNaicsCode = {}; data["entityNaicsCode"]["id"] = routeInfo["marketSegment"][0]["id"]; data["entityNaicsCode"]["name"] = routeInfo["marketSegment"][0]["naicsCode"]; if (routeInfo["marketSegment"][0]["parentTerm"] != null) { data["parentNaicsCode"]["id"] = routeInfo["marketSegment"][0]["parentTerm"]["id"]; data["parentNaicsCode"]["name"] = routeInfo["marketSegment"][0]["parentTerm"]["naicsCode"]; } } else { data.entityNaicsCode = []; } if (routeInfo.taggedPro) { data.isPro = routeInfo.taggedPro; } window.dataLayer.push(data); } else if (routeInfo && "vid" in routeInfo) { data.entityBundle = "tags"; data.entityTitle = routeInfo.name; data.entityId = routeInfo.id; data.entityName = routeInfo.author?.uname; data.entityCreated = routeInfo.created; data.entityType = "taxonomy_term"; data.entityLangcode = SITE_LANGUAGE; data.siteName = siteName; data.sponsored = routeInfo.sponsored; data.sponsor = routeInfo.sponsoringCompany; data.drupalLanguage = language; data.drupalCountry = country; data.userRoles = userRoles; data.userUid = userUid; data.algoliaIndexName = indexName; data["entityTaxonomy"]["tags"] = { id: routeInfo["id"], name: routeInfo["name"], }; window.dataLayer.push(data); } })();