{
  "rules": [
    {
      "name": "TrackPageLoad",
      "payload": {
        "event": "trackPageLoad",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-0001",
          "ucsState": "non-pv",
          "eventName": "pageLoad",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "PL-$[eventSource]"
        },
        "page": {
          "pageName": "$[eventSource]:$[pageName:home]",
          "language": "$[language]",
          "loadTime": "$[loadTime]",
          "breakPoints": "$[breakpoint]",
          "loB": "$[loB]",
          "phoneDisplayed": "$[phoneDisplayed:none]",
          "partnerId": "$[partnerId]"
        },
        "step": {
          "flowId": ""
        },
        "faq": {
          "faqDisplay": "$[faqDisplay:false]"
        },
        "chat": {
          "chatDisplay": "$[chatDisplay:false]"
        },
        "banner": {
          "bannerDisplay": "$[bannerDisplay:false]"
        },
        "user": {
          "bncId": "$[bncId:undefined]",
          "loggedStatus": "$[loggedStatus:false]"
        }
      }
    },
    {
            "name": "TrackFormLaunch_cpadappointment",
            "selector": "a[href*='/formulaires/epargne-placements/conseil-privilege.html'], a[href*='/forms/savings-investments/exclusive-counseling.html']",
            "delegate": "body",
            "events": "click",
            "payload": {
                "event": "trackEvent",
                "eventInfo": {
                    "ucsId": "UCS-$[eventSource]-FL",
                    "ucsState": "non-pv",
                    "eventName": "formLaunch",
                    "eventSource": "$[eventSource]",
                    "eventTime": "$[timestamp]",
                    "eventId": "FL-$[eventSource]-aemCPAD",
                    "interaction": "$[ctaText]"
                },
                "product": {
                    "productCategory": "Exclusive Counseling",
                    "productName": "cpadappointment",
                    "productPricing": "",
                    "promoDetail": ""
                }
            }
        },
        {
          "name": "formLaunch_nbfwmAppointment",
          "selector": "a[href*='outlook.office365.com/owa/calendar/'], a[href^='outlook.office365.com/owa/calendar/']",
          "delegate": "body",
          "events": "click",
          "payload": {
              "event": "trackEvent",
              "eventInfo": {
                  "ucsId": "UCS-$[eventSource]-FL",
                  "ucsState": "non-pv",
                  "eventName": "formLaunch",
                  "eventSource": "$[eventSource]",
                  "eventTime": "$[timestamp]",
                  "eventId": "FL-$[eventSource]-Appointment",
                  "interaction": "$[ctaText]"
              }
          }
      },
    {
      "name": "TrackPageReady",
      "selector": "window",
      "events": "load",
      "payload": {
        "event": "trackPageView",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-0002",
          "ucsState": "pv",
          "eventName": "pageReady",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "PR-$[eventSource]"
        },
        "page": {
          "pageName": "$[eventSource]:$[pageName:home]",
          "language": "$[language]",
          "loadTime": "$[loadTime]",
          "breakPoints": "$[breakpoint]",
          "loB": "$[loB]",
          "phoneDisplayed": "$[phoneDisplayed:none]",
          "partnerId": "$[partnerId]"
        },
        "step": {
          "flowId": ""
        },
        "faq": {
          "faqDisplay": "$[faqDisplay:false]"
        },
        "chat": {
          "chatDisplay": "$[chatDisplay:false]"
        },
        "banner": {
          "bannerDisplay": "$[bannerDisplay:false]"
        },
        "user": {
          "bncId": "$[bncId:undefined]",
          "loggedStatus": "$[loggedStatus:false]"
        }
      }
    },
    {
      "name": "TrackSiteSearch",
      "selector": ".quickSearch.section",
      "events": "search",
      "delay": 1000,
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-SCS",
          "ucsState": "non-pv",
          "eventName": "searchSite",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "SCS-$[eventSource]"
        },
        "search": {
          "searchTerms": "$[searchTerms]",
          "searchResults": "$[searchResults:0]"
        }
      },
      "variables": {
        "searchTerms": {
          "type": "selector",
          "selector": "this",
          "parent": ".quickSearch.section",
          "child": "#quicksearch-result-topbar-query-text input[name='quickSearch']",
          "method": "val"
        },
        "searchResults": {
          "type": "selector",
          "selector": "this",
          "parent": ".quickSearch.section",
          "child": "#quicksearch-result-header-number #quicksearch-result-number",
          "method": "text",
          "args": {
            "match": "\\d+"
          }
        }
      }
    },
    {
      "name": "TrackOtherCTA_SearchResultClick",
      "selector": "ul#quicksearch-result-detail-pages-container li .quicksearch-result-detail",
      "delegate": ".quickSearch.section",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CCTA",
          "ucsState": "non-pv",
          "eventName": "clickCTA",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "scs_answer - $[resultTitle]" 
        }
      },
      "variables": {
        "resultTitle": {
          "type": "selector",
          "selector": "this",
      "child": ".quicksearch-result-name",
          "method": "text"
        }
      }
    },
    {
      "name": "TrackSearchAdvisor",
      "selector": ".bnc-list .list-container.advisor-list-container",
      "events": "filter",
      "delay": 100,
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-SCA",
          "ucsState": "non-pv",
          "eventName": "searchAdvisor",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "SCA-$[eventSource]"
        },
        "page": {
          "pageName": "$[eventSource]:$[pageName:home]",
          "language": "$[language]",
          "loadTime": "$[loadTime]",
          "breakPoints": "$[breakpoint]",
          "loB": "$[loB]",
          "phoneDisplayed": "$[phoneDisplayed:none]"
        },
        "faq": {
          "faqDisplay": "$[faqDisplay:false]"
        },
        "chat": {
          "chatDisplay": "$[chatDisplay:false]"
        },
        "banner": {
          "bannerDisplay": "$[bannerDisplay:false]"
        },
        "search": {
          "searchTerms": "$[searchTerms:empty]",
          "searchResults": "$[searchResults:0]"
        },
        "user": {
          "bncId": "$[bncId:undefined]",
          "loggedStatus": "$[loggedStatus:false]"
        }
      },
      "excluded": {
        "operator": "==",
        "term1": "$[searchTerms]",
        "term2": "undefined,undefined,undefined,undefined,undefined"
      },
      "variables": {
        "searchTerms": {
          "type": "selector",
          "selector": "this",
          "parent": ".bnc-list",
          "child": ".bnc-search-input input[name='q'], .bnc_list_filter select",
          "method": "val",
          "args": {
            "joinall": true
          }
        },
        "searchResults": {
          "type": "selector",
          "selector": "this",
          "parent": ".bnc-list",
          "child": ".filter-result-info .filter-result-length",
          "method": "text",
          "args": {
            "match": "\\d+"
          }
        }
      }
    },
    {
      "name": "TrackClickToCall",
      "selector": "a[href^='tel:']",
      "delegate": "body",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CC",
          "ucsState": "non-pv",
          "eventName": "clickToCall",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CC-$[eventSource]",
          "interaction": "$[ctaTel]"
        },
        "step": {
          "flowId": ""
        }
      },
      "variables": {
        "ctaTel": {
          "type": "selector",
          "selector": "this",
          "method": "attr",
          "args": {
            "attr": "href",
            "match": "\\+?[\\d- \\(\\)]+"
          }
        }
      }
    },
    {
      "name": "TrackClickToEmail",
      "selector": "a[href^='mailto:']",
      "delegate": "body",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CE",
          "ucsState": "non-pv",
          "eventName": "clickToEmail",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CE-$[eventSource]",
          "interaction": "$[ctaMailTo]"
        },
        "step": {
          "flowId": ""
        }
      },
      "variables": {
        "ctaMailTo": {
          "type": "selector",
          "selector": "this",
          "method": "attr",
          "args": {
            "attr": "href",
            "match": "((\\.?[\\w-]+)+)@(([\\w-]+\\.?)+)"
          }
        }
      }
    },
    {
      "name": "TrackVideoLaunch",
      "selector": ".wrapper-vid",
      "events": "click",
      "delay": 100,
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-VL",
          "ucsState": "non-pv",
          "eventName": "videoLaunch",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "VL-$[eventSource]",
          "interaction": "$[videoId]"
        },
        "step": {
          "flowId": ""
        },
        "video": {
          "videoName": "$[videoName]"
        },
        "user": {
          "bncId": "$[bncId:undefined]",
          "loggedStatus": "$[loggedStatus:false]"
        }
      },
      "variables": {
        "videoId": {
          "type": "selector",
          "selector": "this",
          "child": "iframe",
          "method": "attr",
          "args": {
            "attr": "src",
            "match": "[^/?]+(?=\\?|$)"
          }
        },
        "videoName": {
          "type": "selector",
          "selector": "this",
          "parent": ".aem-Grid.aem-Grid--default--12, .aem-Grid.aem-Grid--default--4",
          "child": "h3",
          "method": "text"
        }
      }
    },
    {
      "name": "TrackOtherCTA_PDF_Download",
      "selector": "a[href*='.pdf']",
      "delegate": "body",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-PDF",
          "ucsState": "non-pv",
          "eventName": "clickPDF",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "PDF Download - $[filename]"
        },
        "product": {
          "productCategory": "",
          "productName": "",
          "productPricing": "",
          "promoDetail": ""
        }
      },
      "variables": {
        "filename": {
          "type": "selector",
          "selector": "this",
          "method": "attr",
          "args": {
            "attr": "href",
            "match": "([\\w-_]+)(?=\\.pdf)"
          }
        }
      }
    },
    {
      "name": "TrackOtherCTA_Signin",
      "selector": "a[href*='client.bnc.ca/fbngp/login'], a[href*='/outils-applications/redir-transac/connexion.html'], a[href*='client.bnc.ca/nbfwm/login'], a[href*='/tools-apps/redir-transac/signin.html']",
      "delegate": "body, .bncr-header-secondary-navigation-options",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CCTA",
          "ucsState": "non-pv",
          "eventName": "clickCTA",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "nbfwm-signin"
        },
        "product": {
          "productCategory": "Not Applicable",
          "productName": "Not Applicable",
          "productPricing": "Not Applicable",
          "promoDetail": "Not Applicable"
        }
      }
    },
    {
      "name": "TrackOtherCTA_AdvisorMicrositeLinkClick",
      "selector": "a[href*='/conseiller/'], a[href*='/advisor/'], a[href*='conseillers.fbngp.ca/'], a[href*='advisors.nbfwm.ca/']",
      "delegate": ".bnc-list .list-container.advisor-list-container",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CCTA",
          "ucsState": "non-pv",
          "eventName": "clickCTA",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "Visit advisor microsite"
        },
        "product": {
          "productCategory": "Not Applicable",
          "productName": "Not Applicable",
          "productPricing": "Not Applicable",
          "promoDetail": "Not Applicable"
        }
      }
    },
    {
      "name": "TrackOtherCTA_FindAnAdvisorClick",
      "selector": "a[href*='/conseiller.html'], a[href*='/advisor.html']",
      "delegate": "body",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CCTA",
          "ucsState": "non-pv",
          "eventName": "clickCTA",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "Click-to-advisor-page"
        },
        "product": {
          "productCategory": "Not Applicable",
          "productName": "Not Applicable",
          "productPricing": "Not Applicable",
          "promoDetail": "Not Applicable"
        }
      }
    },
    {
      "name": "TrackHomerun_OpenSearchClick",
      "selector": "#search-link",
      "events": "click",
      "payload": {
        "event": "trackEvent",
        "eventInfo": {
          "ucsId": "UCS-$[eventSource]-CCTA",
          "ucsState": "non-pv",
          "eventName": "clickCTA",
          "eventSource": "$[eventSource]",
          "eventTime": "$[timestamp]",
          "eventId": "CCTA-$[eventSource]",
          "interaction": "click to search"
        }
      }
    }
  ],
  "listeners": [
    {
      "selector": "window",
      "events": "load",
      "trigger": {
        "selector": ".quickSearch.section",
        "event": "search"
      }
    },
    {
      "selector": ".quickSearch.section #quicksearch-result-topbar-query-text input[name='quickSearch']",
      "events": "enterkeyup",
      "trigger": {
        "selector": "this",
        "parent": ".quickSearch.section",
        "event": "search"
      }
    },
    {
      "selector": ".quickSearch.section #quicksearch-result-topbar-icon button",
      "events": "click",
      "trigger": {
        "selector": "this",
        "parent": ".quickSearch.section",
        "event": "search"
      }
    },
    {
      "selector": ".bnc-list .search-input input",
      "events": "enterkeyup empty",
      "trigger": {
        "selector": "this",
        "parent": ".bnc-list",
        "child": ".list-container",
        "event": "filter"
      }
    },
    {
      "selector": ".bnc-list .search-input i",
      "events": "click",
      "trigger": {
        "selector": "this",
        "parent": ".bnc-list",
        "child": ".list-container",
        "event": "filter"
      }
    },
    {
      "selector": ".bnc-list .list-container .search-input",
      "events": "enterkeyup empty",
      "trigger": {
        "selector": "this",
        "parent": ".bnc-list",
        "child": ".list-container",
        "event": "filter"
      }
    },
    {
      "selector": ".bnc-list .search-button",
      "events": "click",
      "trigger": {
        "selector": "this",
        "parent": ".bnc-list",
        "child": ".list-container",
        "event": "filter"
      }
    },
    {
      "selector": ".bnc-list .bnc-list-selectFilter-group select",
      "events": "change",
      "trigger": {
        "selector": "this",
        "parent": ".bnc-list",
        "child": ".list-container",
        "event": "filter"
      }
    }
  ],
  "variables": {
    "phoneDisplayed": {
      "type": "selector",
      "selector": "a[href^='tel:']:lt(3)",
      "method": "attr",
      "args": {
        "attr": "href",
        "match": "\\+?[\\d- \\(\\)]+",
        "joinall": true
      }
    },
    "partnerId": {
      "type": "selector",
      "selector": "document",
      "method": "prop",
      "args": {
        "prop": "URL",
        "match": "\\/(conseiller|advisor)\\/[\\w-_]+"
      }
    },
    "faqDisplay": {
      "type": "selector",
      "selector": "div[data-react-id*='floating'][data-react-id*='menu'] .floating-menu",
      "method": "exist"
    },
    "loggedStatus": {
      "type": "cookie",
      "cookie": "secure_flag"
    },
    "chatDisplay": {
      "type": "selector",
      "selector": "#bnc-chatbot",
      "method": "exist"
    },
    "ctaText": {
      "type": "selector",
      "selector": "this",
      "method": "text"
    }
  }
}