Cover Picture

Customer Examples

We've compiled the following examples for those seeking inspiration for their own Instant Website.

Adding links to your footer

Custom JavaScript

$('.footer').prepend('<a href="https://google.com" >Google</a> | <a href="https://facebook.com" >Facebook</a><br>');

Redirecting your logo to another site

Custom JavaScript

$(".top-logo").click((e) => {
    e.preventDefault();
    location.href = "xxx.yoursite.com"
})

Remove "Powered by Instant Websites"

Custom CSS

.footer>a {
    display: none;
}

Header background to black with white text.

Custom CSS

/* Changes header to black background and white text */
.expanding-nav,
.nav a,
.header {
  background-color: #000;
  color: #FFF;
}

Use preferred font, code block style and highlight support link in a different colour.


Custom CSS

/* import preferred font family */
@import 'https://fonts.googleapis.com/css?family=Ubuntu';
h1, h2, h3 {
    font-family: "Ubuntu";
}

/* preferred format for code block */
.code {
 border: solid 1px #e1e4e5;
 padding: 10px 0px 10px 20px;
}
.syntaxhighlighter-pre {
 overflow: hidden;
}

/* highlight Support link in top nav */
.expanding-nav li:last-child {
  color: #0c8805;
}


Custom JavaScript

<!-- Facebook Pixel Code -->
	<script>
	      !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
	          n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
	      n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
	      t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
	          document,'script','https://connect.facebook.net/en_US/fbevents.js');
	      
	      fbq('init', '9764708191141xx', { em: 'insert_email_variable,' });
	      fbq('track', 'PageView');
	  </script>
	<noscript>
		<img height="1" width="1" style="display: none"
			src="https://www.facebook.com/tr?id=976470819114134&ev=PageView&noscript=1" />
	</noscript>
	<!-- DO NOT MODIFY -->
	<!-- End Facebook Pixel Code -->

Add an image carousel.

Prerequisites:

  • Confluence page needs a 'div' macro.

  • Class=fadein on the div.

  • Add images within that div.

Custom CSS

/* image carousel / slideshow c/o snook.ca */
@keyframes fade {
  0%   { opacity: 0; }
  11.11%   { opacity: 1; }
  33.33%  { opacity: 1; }
  44.44%  { opacity: 0; }
  100% { opacity: 0; }
}

.fadein {
  position:relative;
  height:672px;
  width:1107px;
}
.fadein p {
  position:absolute;
  left:0;
  right:0;
  opacity:0;
  animation-name: fade;
  animation-duration: 9s;
  animation-iteration-count: infinite;
}
.fadein p:nth-child(1) { animation-delay: 0s;  }
.fadein p:nth-child(2) { animation-delay: 3s;  }
.fadein p:nth-child(3) { animation-delay: 6s;  }

Aligning images in a sentence

Custom CSS

/* Place icons on the same line as text */
span.aui-icon.confluence-information-macro-icon {
float: left;
margin: 0.15em;
}

/* Embedded images appear on the same line as text */
.wiki-content .confluence-embedded-file-wrapper .confluence-embedded-image {
display: inline-block;
}

Make the search icon appear on a non-white background

  • Replace #888 with your foreground colour

  • Replace #FFF with your background colour

Example below shows a black background with a white loupe.

Custom CSS

.expanding-nav .search > button {
   background: #000;
   border: 2px solid #fff;
}
 
.expanding-nav .search > button:after {
    background: #FFF;
}

Large information panels

Custom CSS

.expanding-nav,
.nav a,
.header {
  background-color: #54a369;
  color: #FFF;
}
element.style {
    font-size: 30.0px;
    line-height: 30.0px;
}

.expanding-nav .search > button {
   background: #54a369;
   border: 2px solid #fff;
}

.expanding-nav .search > button:after {
    background: #FFF;
}

.title {
    font-size: 1.375em;
    color: #2679b5;
}

.confluence-information-macro {
    padding: 20px 20px 20px 25px;
    border: 1px solid #eee;
    border-radius: 3px;
    box-shadow: inset 5px 0 0 0 #00b1cf;
    margin-bottom: 30px;
    position: relative;
    padding-left: 100px;
}

.confluence-information-macro.confluence-information-macro-tip {
    box-shadow: inset 5px 0 0 0 #1ab578;
  padding-left: 100px;
}

p {
    color: #5f5f5f;
}

h1:first-child, .wiki-content
h2:first-child, .wiki-content
h3:first-child, .wiki-content
h4:first-child, .wiki-content
h5:first-child, .wiki-content
h6:first-child {
    ; color:#5f5f5f;
  margin-top:0px;
}

.top-logo {
    background-position: 0,6%
}

element.style {
}

.wiki-content
.confluence-embedded-file-wrapper
.confluence-embedded-image[height],
.wiki-content .confluence-embedded-file-wrapper
.confluence-embedded-image[width] {
    max-width: none;
  margin-left:-80px;
  position: absolute;
}

.confluence-information-macro.confluence-information-macro-tip .title {
    color: #4b5;
  font-size: 30px;
  margin-left: -70px;
}

.title {
    font-size: 1.375em;
    color: #2679b5;
  font-size: 30px;
  margin-left: -70px;
}


Embedding the JSD Widget

Replace XX-XX-XX with your generated data-key

JSD Widget

Custom JavaScript

document.write("<script data-jsd-embedded='' data-key='XX-XX-XX' data-base url='https://embedded-jsd.atlassian.io' src='https://embedded-jsd.atlassian.io/assets/embed.js' ></script>")

Adding accept cookie popup for GDPR compliance

Custom CSS

.cookie-message {
  position: fixed;
  color: white;
  font-size: .8em;
  line-height: 1.5em;
  right: 1.5rem;
  bottom: 1.5rem;
  max-width: 25em;
  padding: 1rem;
  background: black;
  z-index: 9999; 
}

Custom JavaScript

$(document).ready(function() {
    jQuery.ajax({
         url: 'https://cdnjs.cloudflare.com/ajax/libs/jquery.cookieBar/0.0.3/jquery.cookieBar.min.js',
        dataType: 'script',
        success: function(){
            $.cookieBar();
        },
        async: true
    });
});

Using Auth0 to add authentication.

You will need to sign up with Auth0 and provide your client ID and OAuth domain.

You will also need to create users for authentication or integrate it identity provider of your choice.

Custom JavaScript

jQuery.loadScript = function (url, callback) {
    jQuery.ajax({
        url: url,
        dataType: 'script',
        success: callback,
        async: true
    });
}

$.loadScript('https://cdn.auth0.com/js/auth0/9.5.1/auth0.min.js', function(){
  $.loadScript('https://cdn.auth0.com/js/lock/11.9.1/lock.min.js', function() {
    var lock = new Auth0Lock(
      'YOUR_CLIENT_ID',
      'YOUR_OAUTH_DOMAIN',
      { 
         closable: false, 	
  		 auth: {
           redirectUrl: window.location.origin,
           responseType: "token",
           sso: true
         }
      }
    );
    // Listening for the authenticated event
    lock.on("authenticated", function(authResult) {
      // Use the token in authResult to getUserInfo() and save it to localStorage
      lock.hide();
      
      lock.getUserInfo(authResult.accessToken, function(error, profile) {
        if (error) {
          lock.show();
          return;
        }

        localStorage.setItem('accessToken', authResult.accessToken);
        localStorage.setItem('profile', JSON.stringify(profile));
      });
    });
    if (localStorage.getItem('accessToken') != null) {
      lock.getUserInfo(localStorage.getItem('accessToken'), function(error, profile) {
        if (error) {
          lock.show();
          return;
        }
      });
  	} else {       
    	lock.show();
    }
  });
});