Usage

This will also check a backup URL for cases of major outages.

  • Fallback URL: https://embl-communications.github.io/embl-notifcations-fallback/notifications.js
  • Fallabck repo: https://github.com/embl-communications/embl-notifcations-fallback

Possible features not currently planned:

  • Only show if a wrapping element has data-vf-js-embl-notifications
  • Also load messages from EBI's existing announcement JS at https://ebi.emblstatic.net/announcements.js
  • Use the vf-banner precompiled njk template to render output
  • Test for better support on non-VF 2.0 sites

Variants

Some content to demonstrate notification behaviour on long pages.

Vitae vestibulum felis sollicitudin integer sagittis lacus cum, sociis est quam habitant volutpat tempor, et netus fermentum quis erat eleifend. Cubilia accumsan nullam conubia hendrerit penatibus purus pulvinar sodales primis hac, aliquam pretium velit tristique nec netus mattis enim mus, commodo fringilla urna eget cursus praesent elementum venenatis mollis. Taciti ultricies congue tempus ultrices phasellus semper quam massa nascetur leo mollis, eleifend venenatis dictumst lectus nibh eget imperdiet feugiat velit quis posuere, malesuada nisi ut dignissim fames aenean cum at non sed. Vestibulum a proin morbi congue erat ridiculus lectus arcu, augue eget platea lacus diam pretium ultricies ante, posuere per faucibus penatibus molestie rutrum praesent.

Vulputate imperdiet orci phasellus convallis montes metus tincidunt ad fermentum sociosqu, urna laoreet sapien accumsan parturient molestie faucibus suspendisse ligula, odio penatibus lectus velit fringilla est mi libero purus. Pretium elementum ut taciti cum platea nec euismod consequat curabitur, suscipit nullam quis vestibulum sed morbi dis scelerisque torquent dapibus, lacus dictumst tellus pulvinar congue tempus neque egestas. Primis iaculis accumsan tincidunt tristique, netus nascetur.

Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.

Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.

Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.

Posuere tortor volutpat etiam scelerisque, risus convallis hendrerit. Curae nisi convallis aptent ultricies purus dictum nullam, tellus aliquam mus potenti leo erat ornare et, ante cursus augue sociosqu diam justo. Turpis porttitor vestibulum posuere penatibus habitant duis phasellus, bibendum nunc venenatis suspendisse convallis quisque elementum, metus dapibus platea orci ridiculus iaculis. Libero dis orci nostra elementum phasellus fermentum, quisque vulputate nunc nisl facilisi dui, volutpat egestas a metus molestie.

Est lacus mi auctor vel imperdiet mattis non euismod orci, eu vivamus mus etiam class vitae magnis ultrices. Aenean interdum enim faucibus est quisque, aptent ut lobortis maecenas sapien facilisi, parturient dapibus ridiculus pulvinar. Arcu eros neque erat purus enim eleifend sapien convallis lacus, nibh ultricies penatibus ridiculus torquent taciti tempus nisl mus, sociosqu viverra etiam vitae magna magnis malesuada sollicitudin.

HTML
<!-- embl global header, loaded from contentHub to demonstrate cascade -->
<link rel="import" href="https://www.embl.org/api/v1/pattern.html?filter-content-type=article&filter-id=108434&pattern=node-body&source=contenthub" data-target="self" data-embl-js-content-hub-loader>

<div class="embl-notifications | vf-content">
  <p>Some content to demonstrate notification behaviour on long pages.</p>

  <p>Vitae vestibulum felis sollicitudin integer sagittis lacus cum, sociis est quam habitant volutpat tempor, et netus fermentum quis erat eleifend. Cubilia accumsan nullam conubia hendrerit penatibus purus pulvinar sodales primis hac, aliquam pretium velit tristique nec netus mattis enim mus, commodo fringilla urna eget cursus praesent elementum venenatis mollis. Taciti ultricies congue tempus ultrices phasellus semper quam massa nascetur leo mollis, eleifend venenatis dictumst lectus nibh eget imperdiet feugiat velit quis posuere, malesuada nisi ut dignissim fames aenean cum at non sed. Vestibulum a proin morbi congue erat ridiculus lectus arcu, augue eget platea lacus diam pretium ultricies ante, posuere per faucibus penatibus molestie rutrum praesent.</p>

  <p>Vulputate imperdiet orci phasellus convallis montes metus tincidunt ad fermentum sociosqu, urna laoreet sapien accumsan parturient molestie faucibus suspendisse ligula, odio penatibus lectus velit fringilla est mi libero purus. Pretium elementum ut taciti cum platea nec euismod consequat curabitur, suscipit nullam quis vestibulum sed morbi dis scelerisque torquent dapibus, lacus dictumst tellus pulvinar congue tempus neque egestas. Primis iaculis accumsan tincidunt tristique, netus nascetur.</p>

  <p>Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.</p>

  <p>Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.</p>

  <p>Natoque sociis luctus diam hac per sociosqu, senectus fringilla porttitor ante eros tincidunt, pharetra tempor taciti purus eleifend. Turpis viverra habitasse quis ut mollis enim, neque sagittis massa morbi platea malesuada placerat, proin nullam egestas montes vitae. Cursus feugiat platea sed laoreet congue per placerat volutpat scelerisque, dis torquent lectus nostra massa eleifend mus porttitor, vulputate viverra facilisis dictum enim penatibus sociosqu odio. Felis sodales urna semper libero turpis per blandit faucibus lacinia placerat hendrerit mus, malesuada dapibus scelerisque ullamcorper curabitur cras ut quam ad volutpat.</p>

  <p>Posuere tortor volutpat etiam scelerisque, risus convallis hendrerit. Curae nisi convallis aptent ultricies purus dictum nullam, tellus aliquam mus potenti leo erat ornare et, ante cursus augue sociosqu diam justo. Turpis porttitor vestibulum posuere penatibus habitant duis phasellus, bibendum nunc venenatis suspendisse convallis quisque elementum, metus dapibus platea orci ridiculus iaculis. Libero dis orci nostra elementum phasellus fermentum, quisque vulputate nunc nisl facilisi dui, volutpat egestas a metus molestie.</p>

  <p>Est lacus mi auctor vel imperdiet mattis non euismod orci, eu vivamus mus etiam class vitae magnis ultrices. Aenean interdum enim faucibus est quisque, aptent ut lobortis maecenas sapien facilisi, parturient dapibus ridiculus pulvinar. Arcu eros neque erat purus enim eleifend sapien convallis lacus, nibh ultricies penatibus ridiculus torquent taciti tempus nisl mus, sociosqu viverra etiam vitae magna magnis malesuada sollicitudin.</p>
</div>
              

Examples

Installation info

This repository is distributed with npm. After installing npm, you can install embl-notifications with this command.

$ yarn add --dev @visual-framework/embl-notifications

Sass/CSS

Add this to your ./components/vf-component-rollup/scripts.js:

import { emblNotifications } from 'embl-notifications/embl-notifications';
// if you use embl-content-hub-loader, it will automatically invoke emblNotifications
// emblNotifications(); // invoke embl notifications

You can masquerade as another page or URL for adhoc use cases or testing:

// emblNotifications(currentHost = 'www.embl.org', currentPath = 'my/test/path`);
emblNotifications('www.embl.org','/')

Changelog

Changelog

1.2.1

  • Support added for GA region. This region is generic for banner notifications.

1.2.0

  • Support inserting after EBI black bar.

1.1.1

  • Remove use of long deprecated vf-banner--phase variant and replace with vf-banner--alert vf-banner--info.
  • Adds vf-u-margin__top--400 to handle cases of nested output where vf-stack may not reach.

1.1.0

  • Capture all links without vf-banner__link class.

1.0.2

  • Improve JS module import support.
  • https://github.com/visual-framework/vf-core/pull/1476/

1.0.1

  • JS linting

1.0.0

  • Check a backup URL for cases of major outages: https://embl-communications.github.io/embl-notifcations-fallback/notifications.js
  • https://github.com/visual-framework/vf-core/issues/1150

1.0.0-beta.1

  • Use .vf-banner__link

1.0.0-alpha.2

  • Improved formatting support and conditional logic https://github.com/visual-framework/vf-core/pull/817
  • Notification cookies and memory options

1.0.0-alpha.1 (2020-03-20)

  • Documentation and minor text formatting improvemetns

1.0.0-alpha.0

  • Initial release

Assets



File system location: components/embl-notifications

Find an issue on this page? Propose a change or discuss it.