","alternateLabel":null,"whitePaperDocument":"/secure-file/1175","metatags":{"title":{"#tag":"meta","#attributes":{"name":"title","content":"Restaurant Steels Against PCI Risks with Managed Services | Columns | Hospitality Magazine (HT)"}},"description":{"#tag":"meta","#attributes":{"name":"description","content":"A cloud solution from Decision Logic helps City Barbeque spot PCI risks, eliminate software discrepancies, improve communication, and drastically reduce costly on-site visits."}},"abstract":{"#tag":"meta","#attributes":{"name":"abstract","content":"A cloud solution from Decision Logic helps City Barbeque spot PCI risks, eliminate software discrepancies, improve communication, and drastically reduce costly on-site visits."}},"keywords":{"#tag":"meta","#attributes":{"name":"keywords","content":"Decision Logic, Family Casual Dining, Fast Casual Dining, Fine Dining, Foodservice, March 2013, Payment Card Industry (PCI) Standards, Point of Service (POS) Security, Point of Service (POS) Software, POS, Sponsored Case Study"}},"og_site_name":{"#tag":"meta","#attributes":{"property":"og:site_name","content":"Hospitality Technology"}},"og_type":{"#tag":"meta","#attributes":{"property":"og:type","content":"Whitepaper"}},"og_url":{"#tag":"meta","#attributes":{"property":"og:url","content":"https://hospitalitytech.com/restaurant-steels-against-pci-risks-managed-services"}},"og_title":{"#tag":"meta","#attributes":{"property":"og:title","content":"Restaurant Steels Against PCI Risks with Managed Services"}},"og_image_0":{"#tag":"meta","#attributes":{"property":"og:image","content":"https://assets1.hospitalitytech.com/styles/primary_articles_short/s3/99_HT_0313.jpg?itok=Uk0AFoCm"}},"og_image_url_0":{"#tag":"meta","#attributes":{"property":"og:image:url","content":"https://assets1.hospitalitytech.com/styles/primary_articles_short/s3/99_HT_0313.jpg?itok=Uk0AFoCm"}},"og_image_type":{"#tag":"meta","#attributes":{"property":"og:image:type","content":"image/jpeg"}},"og_image_width":{"#tag":"meta","#attributes":{"property":"og:image:width","content":"655"}},"og_image_height":{"#tag":"meta","#attributes":{"property":"og:image:height","content":"368"}},"og_updated_time":{"#tag":"meta","#attributes":{"property":"og:updated_time","content":"2021-12-17T12:41:17-0600"}},"twitter_cards_type":{"#tag":"meta","#attributes":{"name":"twitter:card","content":"summary_large_image"}},"twitter_cards_title":{"#tag":"meta","#attributes":{"name":"twitter:title","content":"Restaurant Steels Against PCI Risks with Managed Services"}},"twitter_cards_image":{"#tag":"meta","#attributes":{"name":"twitter:image","content":"https://assets1.hospitalitytech.com/styles/primary_articles_short/s3/99_HT_0313.jpg?itok=Uk0AFoCm"}},"schema.org":{"schema_article_type":{"#tag":"meta","#attributes":{"name":"@type","content":"Article","group":"schema_article","schema_metatag":true}},"schema_article_name":{"#tag":"meta","#attributes":{"name":"name","content":"Restaurant Steels Against PCI Risks with Managed Services","group":"schema_article","schema_metatag":true}},"schema_article_headline":{"#tag":"meta","#attributes":{"name":"headline","content":"Restaurant Steels Against PCI Risks with Managed Services","group":"schema_article","schema_metatag":true}},"schema_article_article_body":{"#tag":"meta","#attributes":{"name":"articleBody","content":"A cloud solution from Decision Logic helps City Barbeque spot PCI risks, eliminate software discrepancies, improve communication, and drastically reduce costly on-site visits.","group":"schema_article","schema_metatag":true}},"schema_article_about_0":{"#tag":"meta","#attributes":{"name":"about","content":["Payment Security","POS","Restaurants","Family Casual Dining","Fast Casual Dining","Fine Dining","Sponsored Case Study"],"group":"schema_article","schema_metatag":true}},"schema_article_date_published":{"#tag":"meta","#attributes":{"name":"datePublished","content":"Sun, 03/03/2013 - 18:00","group":"schema_article","schema_metatag":true}},"schema_article_date_modified":{"#tag":"meta","#attributes":{"name":"dateModified","content":"Sun, 03/03/2013 - 18:00","group":"schema_article","schema_metatag":true}}}},"teaserImage":{"id":1500,"url":"https://assets1.hospitalitytech.com/styles/secondary_articles_short/s3/99_HT_0313.jpg?itok=8AHi8yzV","width":100,"alt":null,"height":129},"heroImage":null,"heroImageSrcset":null,"sponsored":false,"sponsorship":{"overrideAds":null},"businessTopic":[],"contentType":[],"company":[],"marketSegment":[],"topics":[{"id":16,"name":"Payment Security","url":"/payment-security"},{"id":59,"name":"POS","url":"/pos"},{"id":9,"name":"Restaurants","url":"/restaurants"},{"id":160,"name":"Family Casual Dining","url":"/family-casual-dining"},{"id":17,"name":"Fast Casual Dining","url":"/fast-casual-dining"},{"id":199,"name":"Fine Dining","url":"/fine-dining"},{"id":236,"name":"Sponsored Case Study","url":"/sponsored-case-study"}],"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 = "Restaurant Steels Against PCI Risks with Managed Services | Columns | Hospitality Magazine (HT)"; window.dataLayer = window.dataLayer || []; const data = {}; data.entityTaxonomy = {}; const contentTypes = [ "article", "blog", "bulletin", "embed_page", "landing_page", "event", "image", "page", "product", "whitepaper", "video", "tags", ]; 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 toxonomy 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); } })();