• web
  • Medical 
    • Medical 
    • Safety Data Sheets (SDS)
    • Tables and Chairs 
    • Instrument Processing 
    • Lights 
      • Lights 
      • 250 LED Exam Light 
      • 253 LED Exam Light 
      • 255 LED Ceiling Procedure Light 
      • 255 LED Mobile Procedure Light 
      • 255 LED Wall Procedure Light 
      • 354 Ceiling Lighting System 
      • 354 Mobile Lighting System 
      • 354 Wall Lighting System 
      • 354 and 355 Combination Lighting System 
      • 355 Ceiling Lighting System 
      • 355 Mobile Lighting System 
      • 355 Wall Lighting System 
    • Cabinetry 
    • Digital Diagnostics 
    • Workstations 
    • Scopes and Bloodpressure 
    • Seating 
    • No Longer Supported Products
  • Dental 
  • Animal Health 
Skip To Main Content
Account
Settings
Logout
  • CORPORATE
    • MEDICAL
    • DENTAL
    • ANIMAL
      HEALTH
  • NORTH AMERICA
    • INDIA
    • EUROPE
    • NEWMED SRL
Logo
  • Medical Solutions
  • Dental Solutions
  • Animal Health Solutions
  • Customer Experience
  • Contact Our Sales Team
  • Diagnostic Product Support
  • Other Requests
  • Online Store
  • Technical Library
  • Request Product Samples
  • Technical Support Form
  • Technical Support Phone
  • Medical Parts
  • Medical Diagnostic Services
  • Medical Diagnostic Software
  • Animal Health Parts + Accessories
  • Technical Library
  • Medical Products
  • Dental Products
  • Animal Health Products
  • Support Home
  • Customer Experience
  • Diagnostic Product Support
  • Online Store
  • Technical Library
  • RTLS Support
  • Safety Data Sheet
  • Self Service
  • Supplier Reference Documents
  • Technical Support
  • Warranty + Maintenance
  • Warranty Registration
  • About Us
  • Careers
  • History + Culture
  • Leadership Team
  • Locations
  • Midmark Experience
  • More About Midmark
  • Newsroom
  • Philanthropy
  • Vision, Mission + Values
  • Trade Show Schedule
  • web
  • Medical
  • Dental
  • Animal Health
Account
Settings
Logout
Filter:
Midmark Technical Library / Medical/Lights/354 Light, 355 Light, 354 and 355 Combination Lighting System Down Tube Assembly
SHARE THIS PAGE

Technical Library

How can we help you?

Filter:
Submit Search

Try searching for things like "Track Light Monitor"

Enclose your search terms in quotation marks for exact search results

Try searching for things like "630 Foot Control"

Try searching for things like "M9/M11 Sterilizers"

Try searching for things like "Midmark 1000"

Try searching for things like "Canis Major Safety Switch"

Try searching for things like "Elevance Assistant's Unit"

Try searching for things like "641 Chair Position Sensor"

Try searching for things like "Track Light Monitor"

Enclose your search terms in quotation marks for exact search results

Slide 1
Slide 2
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
  • Products by category

  • Shop Parts, Software, & Services
  • web
  • Medical Medical 
    • Safety Data Sheets (SDS)
    • Tables and Chairs Tables and Chairs 
    • Instrument Processing Instrument Processing 
    • Lights Lights 
      • 250 LED Exam Light 250 LED Exam Light 
      • 253 LED Exam Light 253 LED Exam Light 
      • 255 LED Ceiling Procedure Light 255 LED Ceiling Procedure Light 
      • 255 LED Mobile Procedure Light 255 LED Mobile Procedure Light 
      • 255 LED Wall Procedure Light 255 LED Wall Procedure Light 
      • 354 Ceiling Lighting System 354 Ceiling Lighting System 
      • 354 Mobile Lighting System 354 Mobile Lighting System 
      • 354 Wall Lighting System 354 Wall Lighting System 
      • 354 and 355 Combination Lighting System 354 and 355 Combination Lighting System 
      • 355 Ceiling Lighting System 355 Ceiling Lighting System 
      • 355 Mobile Lighting System 355 Mobile Lighting System 
      • 355 Wall Lighting System 355 Wall Lighting System 
    • Cabinetry Cabinetry 
    • Digital Diagnostics Digital Diagnostics 
    • Workstations Workstations 
    • Scopes and Bloodpressure Scopes and Bloodpressure 
    • Seating Seating 
    • No Longer Supported Products
  • Dental Dental 
  • Animal Health Animal Health 

354 Light, 355 Light, 354 and 355 Combination Lighting System Down Tube Assembly

  • web
  • Medical
    • Safety Data Sheets (SDS)
    • Tables and Chairs
      • 95 Table
      • 203 Exam Table
      • 204 Exam Table
      • 222 and 223 Barrier-Free™ Examination Table
      • 224 Barrier-Free® Exam Chair
      • 225 Barrier-Free® Exam Chair
      • 230 Universal Procedures Chair
      • 244 Barrier-Free™ Bariatric Power Treatment Table
      • 604 Manual Exam Table
      • 623 Barrier-Free™ Exam Table
      • 625 Barrier-Free® Exam Table
      • 626 Barrier-Free® Exam Chair
      • 627 Barrier-Free® Exam Chair
      • 630 Human Form® Procedures Chair -010 thru -013, -020 thru -023
      • 631 Procedure Chair
      • 640 Pediatric Exam Table
      • 641 Power Procedures Chair
      • 646 Podiatry Procedures Chair
      • 647 Barrier-Free® Podiatry Procedures Chair
    • Instrument Processing
      • Midmark M9® -05x / M11® -05x Sterilizer
      • M9/M11 Steam Sterilizer
      • M3 Steam Sterilizer
      • Data Logger
      • QuickClean™ Ultrasonic Cleaners
      • VistaCool™ Direct-To-Drain System
    • Lights
      • 250 LED Exam Light
      • 253 LED Exam Light
      • 255 LED Ceiling Procedure Light
      • 255 LED Mobile Procedure Light
      • 255 LED Wall Procedure Light
      • 354 Ceiling Lighting System
      • 354 Mobile Lighting System
      • 354 Wall Lighting System
      • 354 and 355 Combination Lighting System
      • 355 Ceiling Lighting System
      • 355 Mobile Lighting System
      • 355 Wall Lighting System
    • Cabinetry
      • 261 Waste Receptacle
      • 265 Cart
      • 665 Cart
      • Dressing Nooks
      • Glove-Cup Dispenser
      • Instrument Panels
      • Midmark Synthesis® Cabinetry
      • Midmark® Modular Cabinetry
      • Ritter Modular Cabinetry
      • Tapmaster
    • Digital Diagnostics
      • IQcart®
      • IQecg® with Lead Management
      • IQholter® EX/EP
      • IQmanager®
      • Midmark Digital Spirometer
      • Midmark® Digital Vital Signs Device
      • IQvitals® Zone™
      • Midmark® Digital ECG
    • Workstations
      • 6201, 6202, 6203 Non-Powered
      • 6204, 6205 Non-Powered
      • 6206, 6207, 6208 Non-Powered
      • 6211, 6215 and 6217 Midmark Workstations
      • 6212, 6213, 6218 and 6219 Midmark Workstations
      • 6214 Midmark Workstation
      • 6230 Non-Powered Phlebotomy Cart
      • 6231 Procedure Cart
      • 6261, 6263 Powered Carts - AC
      • 6271 - 6276 Wall Mounted Units
      • 6281 / 6282 / 6283 Wall Mount Workstations
    • Scopes and Bloodpressure
      • Otoscopes - Ophthalmoscopes - Manual Blood Pressure
    • Seating
      • 270 Series Stools
      • 280 and 282 Side Chairs
      • 281 and 680 Side and Blood Draw Chairs
      • 425 and 427 Series Stools
    • No Longer Supported Products
  • Dental
    • Safety Data Sheets (SDS)
    • Delivery Systems
      • Elevance® Standard Delivery
      • Elevance® Continental-Style Delivery
      • Procenter Systems
      • Asepsis 21® Delivery
      • International (Whip) Delivery
      • European Assistant's Unit
    • Chairs
      • Elevance® Dental Chair
      • Midmark® Ultra-Series Dental Chair
      • 641 Power Procedures Chair
      • Biltmore Classic Dental Chair
    • Lights
      • Midmark® Dental LED Light
      • Midmark® Dental Halogen Light
      • 255 LED Ceiling Procedure Light
      • 255 LED Mobile Procedure Light
      • 255 LED Wall Procedure Light
      • 354 Ceiling Lighting System
      • 354 Mobile Lighting System
      • 354 Wall Lighting System
      • 354 and 355 Combination Lighting System
      • 355 Ceiling Lighting System
      • 355 Mobile Lighting System
      • 355 Wall Lighting System
    • Dental Power Supplies
      • Dental Power Supplies
    • Instrument Processing
      • Midmark M9® -05x / M11® -05x Sterilizer
      • M9/M11 Steam Sterilizer
      • M3 Steam Sterilizer
      • Data Logger
      • QuickClean™ Ultrasonic Cleaners
      • VistaCool™ Direct-To-Drain System
    • Imaging
      • Preva Intraoral X-ray System
      • Vantage Digital Panoramic X-ray System
      • ClearVision® Digital Sensor System
      • Midmark® Intraoral Digital Sensor
      • Midmark True Definition™ Scanner
      • Midmark Imaging Software
    • Compressors
      • PowerAir Compressor (Oil-Less)
      • SmartAir
    • Vacuums
      • Classic Series Vacuums
      • PowerMax
      • PowerVac
      • PowerVac G
      • Smart GVac
    • Cabinetry
      • Midmark Synthesis® Cabinetry
      • Midmark Synthesis® Central Station Cabinetry
      • Midmark Synthesis® Treatment Station Cabinetry
      • Midmark Synthesis® Side Cabinetry
      • Midmark® Modular Cabinetry
      • Ritter Modular Cabinetry
      • Glove-Cup Dispenser
      • Artizan® Expressions - Ortho Cabinet
      • Artizan® Expressions - Pedo Bench
      • Artizan® Expressions - Center Stations
      • Artizan® Expressions - Modular Casework
      • Artizan® Expressions - Side Station
      • Artizan® Expressions - Treatment Stations
      • Artizan® Expressions - X-ray Pass Through
      • Artizan® Expressions Streamline
      • Integra™ Center Console
      • Integra™ Side Cabinetry
      • Integra™ Treatment Console
      • Midmark Integra™ Steri-Center
      • Tapmaster
    • Seating
      • Midmark® Dental Stools 153811 and 153812
    • No Longer Supported Products
  • Animal Health
    • Safety Data Sheets (SDS)
    • Dental Delivery Systems
      • AH9000 Mobile Dental Delivery Unit
      • Midmark® 1000 Mobile Dental Delivery System
      • Handpieces
      • VetPro® Solo
    • Anesthesia
      • Anesthesia Machines
      • Gas Supply Systems
      • Laryngoscopes
      • Scavenging Systems
      • Sodasorb
      • Vaporizers
      • Ventilators
    • Instrument Processing
      • Midmark M9® -05x / M11® -05x Sterilizer
      • M9/M11 Steam Sterilizer
      • M3 Steam Sterilizer
      • Data Logger
      • QuickClean™ Ultrasonic Cleaners
      • VistaCool™ Direct-To-Drain System
    • Tables
      • Electric Lift Exam Table
      • Folding Wall Mount Exam Table
      • Peninsula Folding Lift Table
      • Mobile Lift Table
      • Stationary Wall Mount Exam Table
      • Veterinary Folding Exam Table
      • Wall Hugger Exam Table
      • Hydraulic Column Surgery Table
      • Electric Column Surgery Table
      • Canis Major
      • Fixed Height Tables
      • Vet Synthesis® Tables
    • Compressors
      • PowerAir Compressor (Oil-Less)
      • SmartAir
    • Vacuums
      • Classic Series Vacuums
      • PowerMax
      • PowerVac
      • PowerVac G
      • Smart GVac
    • Imaging
      • Midmark Imaging Software
      • TotalView™ DR
      • VDX Vet
      • VetPro Complete and VetPro DC X-Ray System
      • Midmark® DR Sensor
      • VetPro DR Digital Sensor System
    • Cabinetry
      • Chase
      • Glove-Cup Dispenser
      • Midmark Synthesis® Cabinetry
      • Midmark® Modular Cabinetry
      • Ritter Modular Cabinetry
      • Wall Cabinet
      • Tapmaster
    • Lights
      • 120 LED Light
      • 130 LED Light
      • 250 LED Exam Light
      • 255 LED Ceiling Procedure Light
      • 255 LED Mobile Procedure Light
      • 255 LED Wall Procedure Light
      • 354 Ceiling Lighting System
      • 354 Mobile Lighting System
      • 354 Wall Lighting System
      • 354 and 355 Combination Lighting System
      • 355 Ceiling Lighting System
      • 355 Mobile Lighting System
      • 355 Wall Lighting System
      • Midmark® Dental Halogen Light
      • Medical Lighting
    • Scales
      • LCD Cat Scale
      • Midmark Digital Veterinary Scale
      • The Midmark Way Scale
    • Monitoring and Critical Care
      • Diagnostic Monitors
      • Fluid Management
      • Multi-Parameter Monitors
    • Cages and Kennel Runs
      • Kennel Runs
      • O2 Door
      • Stainless Steel Cage
    • Seating
      • 270 Series Stools
      • 281 and 680 Side and Blood Draw Chairs
      • Midmark® Dental Stools 153811 and 153812
    • Workstations
      • 6212 Workstation
      • 6215 Workstation
      • 6282 Workstation
    • No Longer Supported Products
  • 354 Ceiling Lighting System Visual Index
  • 354 Light and 355 Light, Model Identification Charts
  • 354 Light, 355 Light, 354 and 355 Combination Lighting System Ceiling Covers
  • 354 Light, 355 Light, 354 and 355 Combination Lighting System Ceiling Plate, Double / Combo Lights
  • 354 Light, 355 Light, 354 and 355 Combination Lighting System Down Tube Assembly
  • 354 Light and 355 Light Ballast Components and Cross Tube Assembly with Ballast Kit
  • 354 Light and 355 Light Ceiling Plate, Single Light
  • 354 Light and 355 Light Cross Tube / Bearing Assembly
  • 354 Light Bulb Carriage Assembly
  • 354 Light Housing Components
  • 354 Light Lamp Tube Assembly
  • 354 Light Optic Assembly
ClosedSerial Number Range: All prefixes: KN, KP, KS, KT, LY, LZ, MA, MB, MD, ME, MS1000 thru MS4246, MT1000 thru MT1090, MX1000 thru MX1112, and MZ1000 thru MZ1167

Model

354

355 354 / 355 Combo

Serial Number

All prefixes: KN, KP, KS, KT, LY, LZ, MA, MB, MD, ME, MS1000 thru MS4246, MT1000 thru MT1090, MX1000 thru MX1112, and MZ1000 thru MZ1167

All prefixes: KN, KP, KS, KT, LY, LZ, MA, MB, MD, ME, MS1000 thru MS4246, MT1000 thru MT1090, MX1000 thru MX1112, and MZ1000 thru MZ1167 All prefixes: KN, KP, KS, KT, LY, LZ, MA, MB, MD, ME, MS1000 thru MS4246, MT1000 thru MT1090, MX1000 thru MX1112, and MZ1000 thru MZ1167

Down Tube Assembly

354 Light, 355 Light, 354 and 355 Combination Lighting System Down Tube Assembly
Item Part Number Description Qty

1 

Down Tube Assembly Options - Includes items 2 thru 12
  002-0572-00
Down Tube Assembly for 8 footceiling 1

 

002-0571-00 Down Tube Assembly for 9 ft. ceiling 1

2 

030-1007-00 Main Shaft Weldment 1

3 

002-0561-00 Main Pivot Stop Kit - Includes item 7 1

4 

042-0157-01 Groove Pin 1

5 

029-1935-00 Main Bearing Assembly - Includes items 6 thru 9 1

6 

016-0540-02 DX Bearing 1

7 

  Groove Pin NSS

8 

057-0412-00 Main Pivot Housing 1

9 

016-0131-15 Flanged Bearing 1

10 

040-0010-109

Screw - Apply thread locking adhesive #042-0024-03

Torque: 45 in-lbs 5 N•M

2

11 

045-0001-113 Washer 1

12 

Down Tube Options
  052-0314-00 Down Tube for 8 ft. ceiling 1
  052-0264-00 Down Tube for 9 ft. ceiling 1

13 

040-0010-109 Screw 2

14 

040-0008-91 Screw #8-32 x 3/8” 1

15 

053-0807-00 Ball Pivot Sleeve 1

16 

041-0375-01 Nut - Qty: single / double light 6 / 12

17 

045-0001-09 Lockwasher - Qty: single / double light 3 / 6

NSS = Not Sold Separately | AR = As Required | NLA = No Longer Available | CFN = Call for Number

Always Specify Model and Serial Number

ClosedSerial Number Range: MS4247 thru MS99999, MT1091 thru MT99999, MX1113 thru MX99999 MZ1168 thru MZ99999, and V2200 thru present

Model

354 355 354 / 355 Combo
Serial Number MS4247 thru MS99999, MT1091 thru MT99999, MX1113 thru MX99999, MZ1168 thru MZ99999, and V2200 thru present MS4247 thru MS99999, MT1091 thru MT99999, MX1113 thru MX99999, MZ1168 thru MZ99999, and V2200 thru present MS4247 thru MS99999, MT1091 thru MT99999, MX1113 thru MX99999, MZ1168 thru MZ99999, and V2200 thru present

Down Tube Assembly

354 Light, 355 Light, 354 and 355 Combination Lighting System Down Tube Assembly
Item Part Number Description Qty

1 

Down Tube Assembly Options - Includes items 2 thru 12
  002-0572-00
Down Tube Assembly for 8 ft. ceiling 1

 

002-0571-00 Down Tube Assembly for 9 ft. ceiling 1
  002-0885-00 Down Tube Assembly for 10 ft. ceiling 1

2 

030-1007-00 Main Shaft Weldment 1

3 

002-0561-00 Main Pivot Stop Kit - Includes item 7 1

4 

042-0157-01 Groove Pin 1

5 

029-1935-00 Main Bearing Assembly - Includes items 6 thru 9 1

6 

016-0540-02 DX Bearing 1

7 

  Groove Pin NSS

8 

057-0412-00 Main Pivot Housing 1

9 

016-0131-15 Flanged Bearing 1

10 

040-0010-109

Screw - Apply thread locking adhesive #042-0024-03

Torque: 45 in-lbs 5 N•M

2

11 

045-0001-113 Washer 1

12 

Down Tube Options
  052-0314-00 Down Tube for 8 ft. ceiling 1
  052-0264-00 Down Tube for 9 ft. ceiling 1

13 

040-0010-109 Screw 2

14 

040-0010-124 Screw #10-24 x 3/8” 1

15 

053-0807-00 Ball Pivot Sleeve 1

16 

041-0375-01 Nut - Qty: single / double light 6 / 12

17 

045-0001-09 Lockwasher - Qty: single / double light 3 / 6

NSS = Not Sold Separately | AR = As Required | NLA = No Longer Available | CFN = Call for Number

Always Specify Model and Serial Number

Open menu

  • About Us
  • Careers
  • Contact Us
  • Customer Experience
  • Newsroom
  • Online Parts Store
  • Privacy Policy
  • Technical Library
  • Service + Support
  • Technical Support
Terms + Conditions
midmark-footer-logo
CONNECT WITH US
© 2025 Midmark® Corporation. All rights reserved.
" + "" + "" + //ENG-1082 "\"" + chatbtn_tooltip_text + "\""; /* " "; */ doc.getElementById("widgetlbtn").style.color = color; doc.getElementById("widgetlbtn").style.backgroundColor = msg.widgetcolor; doc.getElementById("widgetlbtn").style.display = 'block'; count = count != undefined ? count : 0; var chatbtn_badge_counter = IMILocalisation.getValue(msg.widget_lang, "badge_counter_unread_messages", "Livechat Button - {0} unread messages"); chatbtn_badge_counter = chatbtn_badge_counter.replace("{0}", count) doc.getElementById("spnwidgetlbtn").setAttribute("aria-label", chatbtn_badge_counter); doc.getElementById("widgetlbtn").addEventListener('click', function () { console.log("switchicon called"); if (parent.IMIChatInit != undefined) { parent.IMIChatInit.chatswitchicon(); } else { IMIChatInit.chatswitchicon(); } }); doc.getElementById("widgetlbtn").addEventListener('keydown', function (e) { if (e.key === 'Tab' && !e.shiftKey) { e.preventDefault(); var widgetmainIframe = window.parent.document.getElementById("iframechatwindow"); if (document.getElementById("divchatmain").style.display == "block") { widgetmainIframe.contentWindow.postMessage({ action: 'widgetbuttonkeypress', }, "*"); } this.blur(); } }); document.getElementById('imi-chatbutton').style.display = "block"; //console.log( doc.getElementById("widgetlbtn")); /*$('[data-toggle=\"tooltip\"]').tooltip();*/ // doc.close(); /* for test */ var launch_livechat_iframe_title = IMILocalisation.getValue(_IMIchat_widget_lang, "launch_livechat_iframe_title", "Launch Livechat"); var livechat_widget_iframe_title = IMILocalisation.getValue(_IMIchat_widget_lang, "livechat_widget_iframe_title", "Livechat widget"); $("iframe#imi-chatbutton").attr('title', launch_livechat_iframe_title); $("iframe#iframechatwindow").attr('title', livechat_widget_iframe_title); var doc1 = document.getElementById('chatunread-frame').contentWindow.document; // doc1.open(); doc1.head.innerHTML = "" + "" + ""; //ENG-985 doc1.body.innerHTML = "
"; // ""+ //"" + //""; //doc1.close(); doc1.getElementsByTagName('html')[0].classList.add('imichatmsgpreview'); doc1.getElementById("ancclearcards").addEventListener('click', function () { if (parent.IMIChatInit != undefined) { parent.IMIChatInit.clearmsgcards(); } else { IMIChatInit.clearmsgcards(); } }); doc1.getElementById("greetingancclearcards").addEventListener('click', function () { if (parent.IMIChatInit != undefined) { parent.IMIChatInit.cleargreetingmsgcards(); } else { IMIChatInit.cleargreetingmsgcards(); } }); document.getElementById('chatunread-frame').style.display = "block"; this.bindGreetingMessage(msg); IMIGeneral.storeLocal("style_" + document.getElementById("divicw").getAttribute("data-bind") + "_" + window.location.hostname, msg); document.getElementById('chatbutton').style.display = "block"; } else { document.getElementById("divicw").innerHTML = ''; } } catch (e1) { } }, bindGreetingMessage: function (data) { if (sessionStorage.getItem("webex_engage_greetingmessage_shown") != null && sessionStorage.getItem("webex_engage_greetingmessage_shown") != undefined) { return; } if (data.greetingmessage == undefined || data.greetingmessage == null || data.greetingmessage == '') { return; } var node = document.createElement("div"); var node1 = document.createElement("div"); var textnode = document.createTextNode(IMIChatInit.extractContent(data.greetingmessage)); node.className = "msg"; node.style = "cursor:pointer;"; node.setAttribute("tabindex", "0"); //ENG-1065 and ENG-3621 for tabindex node1.className = "msgclear"; node.id = "msg_greetingmessage"; // Create a text node node1.id = "msgclear_greetingmessage"; node1.style = "clear:both;"; node1.addEventListener('click', function () { console.log("switchicon called"); if (parent.IMIChatInit != undefined) { parent.IMIChatInit.chatswitchicon(); } else { IMIChatInit.chatswitchicon(); } }); node.addEventListener('click', function () { console.log("switchicon called"); if (parent.IMIChatInit != undefined) { parent.IMIChatInit.chatswitchicon(); } else { IMIChatInit.chatswitchicon(); } }); node1.addEventListener('keydown', function (e) { if (e.which != 13) return; console.log("switchicon called via keydown"); e.stopPropagation(); e.preventDefault(); node1.click(); }); node.addEventListener('keydown', function (e) { if (e.which != 13) return; console.log("switchicon called via keydown"); e.stopPropagation(); e.preventDefault(); node.click(); }); var span = document.createElement("span"); span.innerHTML = '' + data.name + ':'; node.appendChild(span); node.appendChild(textnode); var referenceNode = document.getElementById('chatunread-frame').contentWindow.document.getElementById("greeting-msg-list"); // document.querySelector('#some-element'); referenceNode.setAttribute("aria-label", "Chat message from"); referenceNode.appendChild(node); referenceNode.appendChild(node1); document.getElementsByClassName("main-unreadchat-cont")[0].style.height = "100%"; document.getElementById('chatunread-frame').contentWindow.document.getElementById("greetingancclearcards").style.display = "block"; sessionStorage.setItem("webex_engage_greetingmessage_shown", 1) }, bindCookieConsentGreetingMessage: function (hue, saturation, lightness1, lightness2) { if (sessionStorage.getItem("webex_engage_greetingmessage_shown") != null && sessionStorage.getItem("webex_engage_greetingmessage_shown") != undefined) { return; } if (cookieConsentWidgetOptions.greetingMessage == undefined || cookieConsentWidgetOptions.greetingMessage == null || cookieConsentWidgetOptions.greetingMessage == '') { return; } var doc1 = document.getElementById('chatunread-frame').contentWindow.document; doc1.head.innerHTML = "" + "" + ""; doc1.body.innerHTML = "
" + cookieConsentWidgetOptions.displayName + "" + cookieConsentWidgetOptions.greetingMessage + "
"; doc1.getElementsByTagName('html')[0].classList.add('imichatmsgpreview'); document.getElementById('chatunread-frame').style.display = "block"; document.getElementsByClassName("main-unreadchat-cont")[0].style.height = "100%"; document.getElementById('chatunread-frame').contentWindow.document.getElementById("greetingancclearcards").style.display = "block"; sessionStorage.setItem("webex_engage_greetingmessage_shown", 1); var node1 = doc1.getElementById('msgclear_greetingmessage'); var node = doc1.getElementById('msg_greetingmessage'); var referenceNode = doc1.getElementById('greeting-msg-list'); referenceNode.setAttribute("aria-label", "Chat message from"); node1.addEventListener('keydown', function (e) { if (e.which != 13) return; console.log("switchicon called via keydown"); e.stopPropagation(); e.preventDefault(); node1.click(); }); node.addEventListener('keydown', function (e) { if (e.which != 13) return; console.log("switchicon called via keydown"); e.stopPropagation(); e.preventDefault(); node.click(); }); }, loadCookieConsentWidgetStyles: function () { try { if (cookieConsentWidgetOptions != '' && cookieConsentWidgetOptions != undefined && cookieConsentWidgetOptions != null && cookieConsentWidgetOptions != 'null') { buttonType = cookieConsentWidgetOptions.buttonType; var color = "#ffffff"; var lightness1 = 0; var lightness = 0; try { var widgcolor = cookieConsentWidgetOptions.widgetColor; r = parseInt(widgcolor.substr(1, 2), 16); g = parseInt(widgcolor.substr(3, 2), 16); b = parseInt(widgcolor.substr(5, 2), 16); hue = IMIGeneral.rgbToHsl(r, g, b)[0] * 360; saturation = IMIGeneral.rgbToHsl(r, g, b)[1] * 100; lightness = IMIGeneral.rgbToHsl(r, g, b)[2] * 100; lightness1 = lightness + 10; lightness2 = 95; var lightness3 = 98; var lightness4 = lightness + 10; if (lightness > 80) { color = "#333333"; } } catch (e1) { } var badgecount = " {1} "; badgecount = badgecount.replace("{0}", "style=\"display:none;\"").replace("{1}", ""); var chatbtn_tooltip_text = IMILocalisation.getValue(cookieConsentWidgetOptions.widgetLang, "chat_button_tooltip", "Live Chat"); _IMIchat_widget_lang = cookieConsentWidgetOptions.widgetLang; var doc = document.getElementById('imi-chatbutton').contentWindow.document; doc.body.innerHTML = "" + "" + "" + "" + "" + ""; doc.getElementById("cookieconsentwidgetlbtn").style.color = color; doc.getElementById("cookieconsentwidgetlbtn").style.backgroundColor = cookieConsentWidgetOptions.widgetColor; doc.getElementById("cookieconsentwidgetlbtn").style.display = 'block'; doc.getElementById("cookieconsentwidgetlbtn").addEventListener('click', function () { if (parent.IMIChatInit != undefined) { parent.IMIChatInit.chatcookieconsentswitchicon(); } else { IMIChatInit.chatcookieconsentswitchicon(); } }); document.getElementById('imi-chatbutton').style.display = "block"; document.getElementById('chatunread-frame').style.display = "block"; doc.getElementById("cookieconsentwidgetlbtn").addEventListener('keydown', function (e) { if (e.key === 'Tab' && !e.shiftKey) { //debugger; e.preventDefault(); var widgetmainIframe = window.parent.document.getElementById("iframecookieconsentwindow"); if (document.getElementById("divchatmain").style.display == "block") { widgetmainIframe.contentWindow.postMessage({ action: 'cookieconsentbuttonkeypress', }, "*"); this.blur(); } } }); this.bindCookieConsentGreetingMessage(hue, saturation, lightness1, lightness2); var launch_livechat_iframe_title = IMILocalisation.getValue(_IMIchat_widget_lang, "launch_livechat_iframe_title", "Launch Livechat"); document.getElementById("imi-chatbutton").setAttribute('title', launch_livechat_iframe_title); var livechat_widget_iframe_title = IMILocalisation.getValue(_IMIchat_widget_lang, "livechat_widget_iframe_title", "Livechat widget"); document.getElementById("iframecookieconsentwindow").setAttribute('title', livechat_widget_iframe_title); document.getElementById('chatbutton').style.display = "block"; } else { document.getElementById("divicw").innerHTML = ''; } } catch (e1) { } }, acceptCookies: function (element) { if (IMIChatInit.checklocalStorage()) { localStorage.setItem("webex_engage_cookieconsent_accepted", 1); cookie_consent_accepted = 1; IMIChatInit.init(); } else { document.getElementById("divicw").innerHTML = "
\n \n \nError:
Cookies Disabled

We use cookies to enable best chat experience. Follow these directions to re-enable cookies specific to your browser type or re-open this website in a cookie-enabled browser.

"; console.log("Local storage not supported"); } }, chatswitchicon: function (type) { console.log("Chatswitchicon::" + type); try { var referenceNode = document.getElementById('chatunread-frame').contentWindow.document.getElementById("greeting-msg-list"); if (referenceNode != undefined && referenceNode != null) referenceNode.removeAttribute('aria-label'); /*type=1-max and 0- min */ var isMobile = "0"; // if (window.innerWidth > 768) { // document.getElementById('divchatmain').className = 'main-chat-cont'; // } else { // document.getElementById('divchatmain').className = 'main-chat-cont chatmobile'; // isMobile="1"; // } if ((navigator.userAgent.indexOf("Mobile")) != -1) { isMobile = "1"; } sessionStorage.setItem("webex_engage_data-bind", document.getElementById("divicw").getAttribute("data-bind")); sessionStorage.setItem("webex_engage_data-org", document.getElementById("divicw").getAttribute("data-org")); var iframe = document.getElementById('imi-chatbutton'); if (iframe == null || iframe == undefined) return; var innerDoc = iframe.contentDocument || iframe.contentWindow.document; //Open Widget if (document.getElementById("divchatmain").style.display === 'none' && (type == 1 || type == 2 || type == undefined)) { document.getElementById("divchatmain").style.display = "block"; IMIGeneral.checkmobile(); var widgetmain = document.getElementById("iframechatwindow");//ENG-1034 widgetmain.contentWindow.focus();//ENG-1034 widgetmain.contentWindow.postMessage({ action: 'widgetbuttonkeypress', }, "*"); //if ((window.outerWidth < 497) && (document.documentElement.classList.contains('imichatmobile-active') == false) && document.getElementById("divchatmain").style.display == "block") { var className = " " + document.documentElement.className + " "; if ((window.outerWidth < 700) && (" " + className + " ").replace(/[\n\t]/g, " ").indexOf("imichatmobile-active") > -1 && document.getElementById("divchatmain").style.display == "block") { // if((document.documentElement.classList.value.split(/\s+|\./).filter(word => word === 'imichatmobile-active').length==1) == false){ document.documentElement.classList.remove("imichatmobile-active"); document.documentElement.className = document.documentElement.className + " imichatmobile-active"; // } } else { document.documentElement.className = document.documentElement.className.replace(' imichatmobile-active', ''); } document.getElementById('chatunread-frame').style.display = "none"; innerDoc.getElementById("widgetlbtn").setAttribute("class", "open-btn state1 " + buttonType + " close-btn"); // innerDoc.getElementById("widgetlbtn").setAttribute("aria-label", "Close web chat"); innerDoc.getElementById("widgetlbtn").setAttribute("aria-expanded", "true"); document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").style.display = "none"; document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").innerText = ""; localStorage.setItem(fingerprint + "_" + _skey + "_badgecount", 0); localStorage.setItem(fingerprint + "_" + _skey + "_cardcount", 0); var clear_badgecounter = IMILocalisation.getValue(_IMIchat_widget_lang, "badge_counter_unread_messages", "Livechat Button - {0} unread messages").replace("{0}",0); innerDoc.getElementById("spnwidgetlbtn").setAttribute("aria-label", clear_badgecounter); IMIChatInit.clearmsgcards(); IMIChatInit.cleargreetingmsgcards(); // if (IMIGeneral.getBrowserName() == "safari") { // if (IMIGeneral.detectIOS()) { // document.body.classList.add('chatnoscroll'); // } // } if (type === undefined) { var destination = document.getElementById('iframechatwindow').contentWindow; msg = { "action": "showiframe", "host": window.location.hostname, "chatmobile": isMobile }; destination.postMessage(msg, domainUrl); document.getElementById("iframechatwindow").setAttribute("aria-hidden", "false"); } return; } //Close Widget if (document.getElementById("divchatmain").style.display === 'block' && (type == 0 || type == 2 || type == undefined)) { document.documentElement.className = document.documentElement.className.replace(' imichatmobile-active', ''); //document.body.classList.remove('chatnoscroll'); document.getElementById("divchatmain").style.display = "none"; innerDoc.getElementById("widgetlbtn").setAttribute("class", "open-btn state " + buttonType); innerDoc.getElementById("widgetlbtn").setAttribute("aria-expanded", "false"); innerDoc.getElementById("widgetlbtn").focus(); innerDoc.getElementById("cookieconsentwidgetlbtn").focus(); document.getElementById('chatunread-frame').style.display = "block"; localStorage.setItem(fingerprint + "_" + _skey + "_cardcount", 0); document.getElementById("iframechatwindow").setAttribute("aria-hidden", "true"); return; } //var iframeEl = document.getElementById("iframechatwindow"); // Make sure you are sending a string, and to stringify JSON // iframeEl.contentWindow.postMessage("hello", '*'); return; } catch (e) { console.log("LaunchProactiveMsgManager:" + e.msg); } }, chatcookieconsentswitchicon: function (type) { try { var referenceNode = document.getElementById('chatunread-frame').contentWindow.document.getElementById("greeting-msg-list"); if (referenceNode != undefined && referenceNode != null) referenceNode.removeAttribute('aria-label'); var isMobile = "0"; if ((navigator.userAgent.indexOf("Mobile")) != -1) { isMobile = "1"; } var iframe = document.getElementById('imi-chatbutton'); if (iframe == null || iframe == undefined) return; var innerDoc = iframe.contentDocument || iframe.contentWindow.document; //Open Widget if (document.getElementById("divchatmain").style.display === 'none' && (type == 1 || type == 2 || type == undefined)) { document.getElementById("divchatmain").style.display = "block"; IMIGeneral.checkmobile(); var widgetcookieconsent = document.getElementById('iframecookieconsentwindow').contentWindow; widgetcookieconsent.postMessage({ action: 'cookieconsentbuttonkeypress', }, "*"); var className = " " + document.documentElement.className + " "; //if ((window.outerWidth < 700) && (" " + className + " ").replace(/[\n\t]/g, " ").indexOf("imichatmobile-active") > -1 && document.getElementById("divchatmain").style.display == "block") { // // if((document.documentElement.classList.value.split(/\s+|\./).filter(word => word === 'imichatmobile-active').length==1) == false){ // document.documentElement.classList.remove("imichatmobile-active"); // document.documentElement.className = document.documentElement.className + " imichatmobile-active"; // // } //} else { // document.documentElement.className = document.documentElement.className.replace(' imichatmobile-active', ''); //} document.getElementById('chatunread-frame').style.display = "none"; innerDoc.getElementById("cookieconsentwidgetlbtn").setAttribute("class", "open-btn state1 " + buttonType + " close-btn"); innerDoc.getElementById("cookieconsentwidgetlbtn").setAttribute("aria-expanded", "true"); document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").style.display = "none"; document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").innerText = ""; //IMIChatInit.clearmsgcards(); if (type === undefined) { var destination = document.getElementById('iframecookieconsentwindow').contentWindow; msg = { "action": "showiframe", "host": window.location.hostname, "chatmobile": isMobile }; destination.postMessage(msg, domainUrl); document.getElementById("iframecookieconsentwindow").setAttribute("aria-hidden", "false"); } IMIChatInit.cleargreetingmsgcards(); return; } //Close Widget if (document.getElementById("divchatmain").style.display === 'block' && (type == 0 || type == 2 || type == undefined)) { document.documentElement.className = document.documentElement.className.replace(' imichatmobile-active', ''); document.getElementById("divchatmain").style.display = "none"; innerDoc.getElementById("cookieconsentwidgetlbtn").setAttribute("class", "open-btn state " + buttonType); innerDoc.getElementById("cookieconsentwidgetlbtn").setAttribute("aria-expanded", "false"); if (innerDoc.getElementById("cookieconsentwidgetlbtn")) { innerDoc.getElementById("cookieconsentwidgetlbtn").focus(); document.addEventListener('keydown', function (event) { if (event.key === "Tab") { event.preventDefault(); if (innerDoc.getElementById("ancclearcards")) { innerDoc.getElementById("ancclearcards").focus(); } else if (innerDoc.getElementById("greetingancclearcards")) { innerDoc.getElementById("greetingancclearcards").focus(); } } }); } document.getElementById('chatunread-frame').style.display = "block"; document.getElementById("iframecookieconsentwindow").setAttribute("aria-hidden", "true"); return; } return; } catch (e) { console.log("LaunchProactiveMsgManager:" + e.msg); } }, clearmsgcards: function () { document.getElementById('chatunread-frame').contentWindow.document.getElementById("msg-list").innerHTML = ""; document.getElementById('chatunread-frame').contentWindow.document.getElementById("ancclearcards").style.display = "none"; //document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").style.display = "none"; //document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").innerText == ""; localStorage.setItem(fingerprint + "_" + _skey + "_cardcount", 0); }, cleargreetingmsgcards: function () { document.getElementById('chatunread-frame').contentWindow.document.getElementById("greeting-msg-list").innerHTML = ""; document.getElementById('chatunread-frame').contentWindow.document.getElementById("greetingancclearcards").style.display = "none"; }, openchat: function (event) { document.getElementById('imichat-fullscreen-modal').className = 'imichat-fullscreen-modal'; document.getElementById('imichat-fullscreen-modal').removeAttribute('tabindex'); document.getElementById('imichat-fullscreen-modal').removeAttribute('aria-hidden'); var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'openchat', threadid: event.data.threadid, proactive_id: event.data.proactive_id }, '*'); if (parent.IMIChatInit != undefined) { parent.IMIChatInit.chatswitchicon(2); } else { IMIChatInit.chatswitchicon(2); } }, extractContent: function (s) { var span = document.createElement('span'); span.innerHTML = s; return span.textContent || span.innerText; }, badgecount: function (event) { try { if (document.getElementById("divchatmain").style.display === 'none') { var count = document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").innerText; if (count == 0 || count == "") { count = 1; } else { count = parseInt(count) + 1; } var duplicate = 0; var innerDivs; var innerDivsCount = 0; var refChild; IMIChatInit.clearmsgcards(); var containerDiv = document.getElementById('chatunread-frame').contentWindow.document.getElementById("msg-list"); if (count > 1) { innerDivs = containerDiv.getElementsByClassName("msg"); if (innerDivs != undefined) { innerDivsCount = innerDivs.length; for (var i = 0; i < innerDivs.length; i++) { if ("msg_" + event.data.msgtransid == innerDivs[i].id) { duplicate = 1; } } refChild = innerDivs[0]; } } var cardcount; var checkbadgecount; if (innerDivs == undefined) { localStorage.setItem(event.data.fingerprint + "_" + _skey + "_cardcount", 1); } document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").style.display = "block"; if (duplicate == 0) { if (parseInt(innerDivsCount) == 5) { containerDiv.removeChild(document.getElementById('chatunread-frame').contentWindow.document.getElementsByClassName('msg')[4]); containerDiv.removeChild(document.getElementById('chatunread-frame').contentWindow.document.getElementsByClassName('msgclear')[4]); innerDivsCount = innerDivsCount - 1; } if ((parseInt(innerDivsCount) < 1 && event.data.badge_type === undefined) || event.data.badge_type === 2 || event.data.badge_type === 3) { var node = document.createElement("div"); var node1 = document.createElement("div"); var textnode = document.createTextNode(IMIChatInit.extractContent(event.data.msg)); if (textnode.data.length > 45) { if (event.data.badge_type === undefined || event.data.badge_type === 2) { textnode.data = textnode.data.substr(0, 45) + "..."; } else { textnode.data = textnode.data; } } node.className = "msg"; node.style = "cursor:pointer;"; node.setAttribute("tabindex", "0"); //ENG-1065 and ENG-3621 for tabindex node1.className = "msgclear"; node.id = "msg_" + event.data.msgtransid; // Create a text node node1.id = "msgclear_" + event.data.msgtransid; node1.style = "clear:both;"; node.addEventListener("click", function () { window.parent.postMessage({ action: 'openchat', threadid: event.data.threadid, proactive_id: event.data.proactive_id }, '*'); }); node1.addEventListener("click", function () { window.parent.postMessage({ action: 'openchat', threadid: event.data.threadid, proactive_id: event.data.proactive_id }, '*'); }); if (event.data.msg_from !== undefined && event.data.msg_from !== "") { var span = document.createElement("span"); //var span span.innerHTML = '' + event.data.msg_from + ':'; node.appendChild(span); } else if (event.data.msg_from === undefined || event.data.msg_from == "") { var span = document.createElement("span"); //var span span.innerHTML = 'New Conversation:'; node.appendChild(span); } node.appendChild(textnode); var height = document.getElementsByClassName('main-unreadchat-cont')[0].style.height; if (height == "") { height = 70; } if (innerDivsCount == 0) { height = document.getElementsByClassName('main-unreadchat-cont')[0].style.height = "100%"; } /* else if (innerDivsCount == 2) { height = document.getElementsByClassName('main-unreadchat-cont')[0].style.height = "150px"; } else if (innerDivsCount > 2) {*/ else { document.getElementsByClassName('main-unreadchat-cont')[0].style.height = parseInt(height) + 60 + "px"; } var referenceNode = document.getElementById('chatunread-frame').contentWindow.document.getElementById("msg-list"); // document.querySelector('#some-element'); if (innerDivsCount == 0) { referenceNode.appendChild(node); referenceNode.appendChild(node1); } else { referenceNode.insertBefore(node, refChild); referenceNode.insertBefore(node1, refChild); if ((window.innerHeight + 100) < (document.getElementsByClassName("main-unreadchat-cont")[0].style.height)) { var frame = document.getElementById('chatunread-frame'); var c = frame.contentDocument || frame.contentWindow.document; c.getElementsByTagName("body")[0].offsetHeight = '80%'; c.getElementsByTagName("body")[0].style.overflow = "auto"; } } if (event.data.badge_type === 3) { document.getElementsByClassName("main-unreadchat-cont")[0].style.height = "100%"; var frame = document.getElementById('chatunread-frame'); var c = frame.contentDocument || frame.contentWindow.document; c.getElementsByClassName("msg")[0].style.maxHeight = "unset"; var frameheight = c.getElementsByTagName("body")[0].offsetHeight; document.getElementsByClassName("main-unreadchat-cont")[0].style.height = frameheight + "px"; } } else if (event.data.badge_type === 4) { var fullscreen_modal = document.getElementById('imichat-fullscreen-modal'); fullscreen_modal.className = 'imichat-fullscreen-modal imichat-open'; fullscreen_modal.contentWindow.postMessage({ action: 'bind_data', proactive_id: event.data.proactive_id, threadid: event.data.threadid, msg_from: event.data.msg_from, msg: event.data.msg, btn_chat_now_open: IMILocalisation.getValue(_IMIchat_widget_lang, "proactive_poupup_chat_now_button", "Chat Now"), btn_chat_now_close: IMILocalisation.getValue(_IMIchat_widget_lang, "proactive_poupup_close_button", "Close") }, "*"); } cardcount = parseInt(localStorage.getItem(event.data.fingerprint + "_" + _skey + "_cardcount")) + 1; localStorage.setItem(event.data.fingerprint + "_" + _skey + "_cardcount", cardcount); localStorage.setItem("fingerprint", event.data.fingerprint); localStorage.setItem(event.data.fingerprint + "_" + _skey + "_badgecount", count); document.getElementById('imi-chatbutton').contentWindow.document.getElementById("chattotalbadge").innerText = count; var chatbtn_badge_counter = IMILocalisation.getValue(_IMIchat_widget_lang, "badge_counter_unread_messages", "Livechat Button - {0} unread messages"); chatbtn_badge_counter = chatbtn_badge_counter.replace("{0}", count); if (count > 0) { //to do for ENG-1082 get localisation for chat button tooltip with count //ENG-1055 document.getElementById('imi-chatbutton').contentWindow.document.getElementById("spnwidgetlbtn").setAttribute("aria-label", chatbtn_badge_counter); //ENG-1082 } else { document.getElementById('imi-chatbutton').contentWindow.document.getElementById("spnwidgetlbtn").setAttribute("aria-label", chatbtn_badge_counter); //ENG-1082 } } document.getElementById('chatunread-frame').style.display = (event.data.badge_type === undefined || (event.data.badge_type === 2 || event.data.badge_type === 3)) ? "block" : "none"; document.getElementById('chatunread-frame').contentWindow.document.getElementById("ancclearcards").style.display = (event.data.badge_type === undefined || (event.data.badge_type === 2 || event.data.badge_type === 3)) ? "block" : "none"; } } catch (e) { console.log("badgecount:" + e.msg); } }, message: function (event) { try { if (event.data.action != null) { if (event.data.action == 'openchat') { IMIChatInit.openchat(event); } if (event.data.action == 'badgecount') { IMIChatInit.badgecount(event); } if (event.data.action == 'chatswitchicon') { IMIChatInit.chatswitchicon(); //event } if (event.data.action == 'Cookiechatswitchicon') { IMIChatInit.chatcookieconsentswitchicon(); //event } if (event.data.action == 'imichat_custom_chat_fields') { if (event.data.type == 'add') { if (_IMIchat_callback_dic['imichat-widget:custom_chat_fields_init'] !== undefined) { _IMIchat_callback_dic['imichat-widget:custom_chat_fields_init'](event.data.response); } } else if (event.data.type == 'update') { if (_IMIchat_callback_dic['imichat-widget:custom_chat_fields_update'] !== undefined) { _IMIchat_callback_dic['imichat-widget:custom_chat_fields_update'](event.data.response); } }//event } if (event.data.action == 'acceptCookies') { IMIChatInit.acceptCookies(); } if (event.data.action == 'widgettabkeypress') { var forkeyboard = document.getElementById('imi-chatbutton').contentWindow.document; forkeyboard.getElementById("widgetlbtn").focus(); } if (event.data.action == 'cookieconsenttabkeypress') { var forkeyboard = document.getElementById('imi-chatbutton').contentWindow.document; forkeyboard.getElementById("cookieconsentwidgetlbtn").focus(); } if (event.data.action == 'loadcookieconsentwidgetstyles') { IMIChatInit.loadCookieConsentWidgetStyles(); } if (event.data.action == 'loadstyles') { IMIChatInit.loadJQuery(_wxengage_domain_name, function () { IMIChatInit.loadwidgetStyles(event.data.message); try { if (event.data.message != null) { if (_IMIchat_callback_dic['imichat-widget:ready'] !== undefined) { _IMIchat_callback_dic['imichat-widget:ready'](_wxengage_attr_key); console.log("imichat-widget:ready fired"); } //eval('imichatWidgetLoaded();'); if (_IMIchat_callback_dic['imichat-widget:custom_chat_fields_init'] !== undefined) { _IMIchat_callback_dic['imichat-widget:custom_chat_fields_init'](); }// debugger; var widget_data = JSON.parse(event.data.message); hdr_bfp = widget_data.hdr_bfp; hdr_xtoken = widget_data.hdr_xtoken; hdr_tid = widget_data.hdr_tid; is_abandonded = widget_data.abandon_chats } } catch (e) { } IMIChatInit.LaunchProactiveMsgManager(_wxengage_domain_name, function () { }); IMIChatInit.handleAbandonedChats(); if (cookie_consent_accepted == 1) { var cookiefocus = document.getElementById('imi-chatbutton').contentWindow.document; cookiefocus.getElementById("widgetlbtn").focus(); } }); } if (event.data.action == 'closemodelpopup') { document.getElementById('imichat-fullscreen-modal').className = 'imichat-fullscreen-modal'; document.getElementById('imichat-fullscreen-modal').setAttribute('tabindex', '-1'); document.getElementById('imichat-fullscreen-modal').setAttribute('aria-hidden', 'true'); } if (event.data.action == 'setsession') { sessionStorage.setItem(event.data.key, event.data.value); } if (event.data.action == 'setlocal') { localStorage.setItem(event.data.key, event.data.value); } if (event.data.action == 'browserstorage') { document.getElementById("divicw").innerHTML = "
\n \n \nError:
Cookies Disabled

We use cookies to enable best chat experience. Follow these directions to re-enable cookies specific to your browser type or re-open this website in a cookie-enabled browser.

"; console.log("Local storage not supported"); } if (event.data.action == 'clearallsessionkeys') { sessionStorage.clear(); } if (event.data.action == 'clearalllocalstoragekeys') { localStorage.clear(); } if (event.data.action == 'cookierejectreload') { IMIChatInit.removeStorageKeysWhenCookieRejected(); IMIChatInit.init(); } } } catch (e) { } }, resize: function () { try { var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'resize', width: window.outerWidth //window.innerWidth//screen.width // document.body.clientWidth }, "*"); IMIGeneral.checkmobile(); } catch (e) { } }, removeStorageKeysWhenCookieRejected: function () { sessionStorage.removeItem(_wxengage_attr_key + "_imichat-reload-check"); sessionStorage.removeItem("webex_engage_data-bind"); sessionStorage.removeItem("webex_engage_data-org"); sessionStorage.removeItem("webex_engage_greetingmessage_shown") localStorage.removeItem(fingerprint + "_" + _skey + "_badgecount"); localStorage.removeItem(fingerprint + "_" + _skey + "_cardcount"); localStorage.removeItem("style_" + document.getElementById("divicw").getAttribute("data-bind") + "_" + window.location.hostname); localStorage.removeItem("webex_engage_customer_first_seen"); localStorage.removeItem("webex_engage_customer_last_seen"); localStorage.removeItem("webex_engage_customer_last_seen_interval_id"); localStorage.removeItem("webex_engage_executed_proactive_ids"); localStorage.removeItem("fingerprint"); localStorage.removeItem("webex_engage_repeat_customer"); sessionStorage.removeItem("webex_engage_imichat_hasinitconvexist"); localStorage.removeItem("webex_engage_cookieconsent_accepted"); cookie_consent_accepted = 0; }, clearBrowserStorage: function () { try { IMIChatInit.removeStorageKeysWhenCookieRejected(); var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'clearbrowserstorage', width: window.outerWidth //window.innerWidth//screen.width // document.body.clientWidth }, "*"); IMIChatInit.verifyCookieConsent(); console.log("browser storage cleared"); } catch (e) { } }, LaunchProactiveMsgManager: function (domainName, callback) { try { var widget_styles = localStorage.getItem("style_" + document.getElementById("divicw").getAttribute("data-bind") + "_" + window.location.hostname); if (widget_styles == null && !JSON.parse(widget_styles).enable_proactive) { callback(); return; } var body = document.getElementsByTagName('body')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = IMIChatInit.domainName() + '/js/proactive-msg-manager.js'; body.appendChild(script); script.addEventListener('load', function (event) { console.log('proactive manager loaded;'); var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'proactive-manager-loaded', attrkey: document.getElementById("divicw").getAttribute("data-bind"), host: window.location.hostname }, "*"); callback(); }); } catch (e) { console.log("LaunchProactiveMsgManager:" + e.msg); } }, processAbandonedChats: function (type) { if (!imichatwidget.hasInitiatedChat()) { return; } if (is_abandonded == false) { return; } var browser_fingerprint = localStorage.getItem("fingerprint"); var url = IMIGeneral.profileUrl() + "livechats/" + _wxengage_attr_key + "/customers/" + browser_fingerprint + "/abandoned?host=" + window.document.URL; url = url + "&type=" + type; var body = JSON.stringify({ "is_reloaded": false, "is_closechat": true }); var headers = { 'type': 'application/json', 'fpid': hdr_bfp, 'Tid': hdr_tid, 'X-Token': hdr_xtoken }; var blob = new Blob([body], headers); navigator.sendBeacon(url); }, handleAbandonedChats: function () { // Attach the event keypress to exclude the F5 refresh //jQuery(window).on('keydown', function (e) { window.addEventListener('keydown', function (e) { if (e.keyCode == 116) { _IMIchat_IsValidNavigation = true; } }); window.addEventListener("beforeunload", function (e) { sessionStorage.setItem(_wxengage_attr_key + "_imichat-reload-check", document.referrer); console.log(document.referrer); //sessionStorage.setItem("imi_tabid", Math.random().toString(16).slice(2)); if (_IMIchat_IsValidNavigation !== undefined && !_IMIchat_IsValidNavigation) { IMIChatInit.processAbandonedChats("unload"); } }); if (window.performance.navigation.type == 1) { IMIChatInit.processAbandonedChats("load"); } }, loadJQuery: function (domainName, callback) { if (typeof (jQuery) !== 'undefined') { callback(); return; } var body = document.getElementsByTagName('body')[0]; var script = document.createElement('script'); script.type = 'text/javascript'; script.src = domainName + '/js/jquery.min.js'; body.appendChild(script); script.addEventListener('load', function (event) { callback(); }); return; }, on: function (func_name, callback) { if (typeof callback != 'function') { console.error('function was expected.'); return; } switch (func_name) { case 'imichat-widget:ready': _IMIchat_callback_dic['imichat-widget:ready'] = callback; break; } }, checklocalStorage: function () { var test = 'test'; try { localStorage.setItem(test, test); localStorage.removeItem(test); return true; } catch (e) { return false; } }, call_previous_chats: function () { try { var destination = document.getElementById('iframechatwindow').contentWindow; msg = { "action": "showiframe", "host": window.location.hostname, "chatmobile": ((navigator.userAgent.indexOf("Mobile")) != -1) ? "1" : "0" }; destination.postMessage(msg, domainUrl); } catch (e) { } }, check_clear_session_chats: function () { if (document.referrer == sessionStorage.getItem(_wxengage_attr_key + "_imichat-reload-check")) { return false; } else if (sessionStorage.getItem(_wxengage_attr_key + "_imichat-reload-check") == undefined) { return true; } else { console.log("Hey, Thanks for visiting again"); return false; } }, verifyCookieConsent: function () { var isCookieConsent = typeof cookieConsentWidgetOptions === 'undefined' ? false : true; if (isCookieConsent != undefined && isCookieConsent != null && isCookieConsent && localStorage.getItem("webex_engage_cookieconsent_accepted") != "1") { try { var body = document.getElementsByTagName('body')[0]; var script = document.currentScript || (function () { var scripts = document.getElementsByTagName('script'); return scripts[scripts.length - 1]; })(); var generalscript = document.createElement('script'); generalscript.src = IMIChatInit.domainName() + "/js/imichatgeneral.js"; generalscript.type = 'text/javascript'; body.appendChild(generalscript); generalscript.addEventListener('load', function (event) { document.getElementById("divicw").innerHTML = "" + "" + "" + "
" + "
" + "" + "
" + ""; var iframeMainDoc = document.getElementById("iframecookieconsentwindow"); iframeMainDoc.addEventListener('load', function () { IMIChatInit.onCookieConsentWidgetIconIframeLoad(); }); iframeMainDoc.src = IMIGeneral.domainName() + "/cookieconsent.html"; window.removeEventListener('message', IMIChatInit.message); window.addEventListener('message', IMIChatInit.message); }); } catch (e) { console.log("LaunchProactiveMsgManager:" + e.msg); } } else { if (IMIChatInit.checklocalStorage()) { IMIChatInit.init(); } else { document.getElementById("divicw").innerHTML = "
\n \n \nError:
Cookies Disabled

We use cookies to enable best chat experience. Follow these directions to re-enable cookies specific to your browser type or re-open this website in a cookie-enabled browser.

"; console.log("Local storage not supported"); } } } }; }(); IMIChatInit.verifyCookieConsent(); var imichatwidget = { // get hasInitiatedConversation() { // if (sessionStorage.getItem("webex_engage_imichat_hasinitconvexist") == null) // return false; // if (sessionStorage.getItem("webex_engage_imichat_hasinitconvexist") == "1") { // return true; // } else { // return false; // } // }, hasInitiatedChat: function () { if (sessionStorage.getItem("webex_engage_imichat_hasinitconvexist") == null) return false; if (sessionStorage.getItem("webex_engage_imichat_hasinitconvexist") == "1") { return true; } else { return false; } }, show: function () { //$("#divicw").show();return; document.getElementById("divicw").style.display = 'block'; }, hide: function () { // $("#divicw").hide();return; document.getElementById("divicw").style.display = 'none'; }, /* test:function() { if(sessionStorage.getItem("webex_engage_imichat_hasinitconvexist")==null) return false; if(sessionStorage.getItem("webex_engage_imichat_hasinitconvexist")=="1") { return true; } else { return false; } },*/ maximizeWindow: function () { IMIChatInit.chatswitchicon(1); IMIChatInit.resize(); IMIChatInit.call_previous_chats(); return; }, minimizeWindow: function () { return IMIChatInit.chatswitchicon(0); }, init: function (jsondata, callback) { if (typeof callback != 'function') { console.error('function was expected.'); return; } var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'imichat_custom_chat_fields', data: jsondata, type: 'add' }, '*'); _IMIchat_callback_dic['imichat-widget:custom_chat_fields_init'] = callback; }, update: function (jsondata, callback) { if (typeof callback != 'function') { console.error('function was expected.'); return; } var destination = document.getElementById('iframechatwindow').contentWindow; destination.postMessage({ action: 'imichat_custom_chat_fields', data: jsondata, type: 'update' }, '*'); _IMIchat_callback_dic['imichat-widget:custom_chat_fields_update'] = callback; }, on: function (func_name, callback) { if (typeof callback != 'function') { console.error('function was expected.'); return; } switch (func_name) { case 'imichat-widget:ready': _IMIchat_callback_dic['imichat-widget:ready'] = callback; break; } }, clearBrowserStorage: function () { IMIChatInit.clearBrowserStorage(); } }; /* function imichatWidgetLoaded(){imi imichatwidget.maximizeWindow(); }*/