Rework sample app and update UI

git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1735031 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/html.jsp
index e0c87f2..8d78051 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/html.jsp
@@ -30,10 +30,15 @@
     <title><%= title %></title>
     <sling:include resource="<%= resource %>" replaceSelectors="head"/>
   </head>
-  <body class="ui-slingshot-main">
+  <body>
     <sling:include resource="<%= resource %>" replaceSelectors="trail"/>
-    <h1><%= title %></h1>
-    <hr/>
+    <div class="jumbotron">
+      <div class="container">
+        <h1><%= title %></h1>
+        <p>Explore the world of bla....</p>
+      </div>
+    </div>
     <sling:include resource="<%= resource %>" replaceSelectors="itemlist"/>
+    <sling:include resource="<%= resource %>" replaceSelectors="bottom"/>
 </body>
 </html>
\ No newline at end of file
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/itemlist.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/itemlist.html.jsp
index ba23f26..018b3e1 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/itemlist.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/itemlist.html.jsp
@@ -22,17 +22,30 @@
                   org.apache.sling.sample.slingshot.SlingshotConstants" %><%
 %><%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %><%
 %><sling:defineObjects/><%
-%><div class="metro ui-slingshot-content">
+%><div class="container">
  <%
+     boolean openedRow = false;
      int i = 0;
      final Iterator<Resource> fi = resource.listChildren();
      while ( fi.hasNext()) {
          final Resource current = fi.next();
          if ( current.isResourceType(SlingshotConstants.RESOURCETYPE_ITEM)) {
+             if ( !openedRow ) {
+                 openedRow = true;
+                 %><div class="row"><%
+             }
              %>
              <sling:include resource="<%= current %>" replaceSelectors="main"/>
              <%
+             i++;
+             if ( i % 3 == 0 ) {
+                 openedRow = false;
+                 %></div><%
+             }
          }
      } 
+     if ( openedRow ) {
+         %></div><%
+     }
   %>
 </div>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/user.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/user.html.jsp
index a5d646f..299251f 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/user.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Category/user.html.jsp
@@ -31,12 +31,9 @@
     for(final Resource current : resource.getChildren()) {
         count++;
     }
-%><div class="tile double ui-slingshot-clickable" data-link="<%= request.getContextPath() %><%=resource.getPath()%>.html">
-    <div class="tile-content icon">
-        <i class="icon-pictures fg-blue"></i>
-    </div>
-    <div class="brand">
-        <span class="label fg-black"><%= ResponseUtil.escapeXml(itemTitle) %></span>
-        <span class="badge bg-orange"><%= count %></span>
-    </div>
+%>
+<div class="col-md-4">
+   <h2><%= ResponseUtil.escapeXml(itemTitle) %></h2>
+   <!--  <img class="img-responsive" style="padding-top: 5px" src="<%= request.getContextPath() %>"/>  -->
+   <p><a class="btn btn-default" href="<%= request.getContextPath() %><%=resource.getPath()%>.html" role="button">View details &raquo;</a> <span class="badge"><%= count %></span></p>
 </div>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/bottom.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/bottom.html.jsp
new file mode 100644
index 0000000..b1a513d
--- /dev/null
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/bottom.html.jsp
@@ -0,0 +1,23 @@
+<%--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+    
+    http://www.apache.org/licenses/LICENSE-2.0
+    
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+--%><%@page session="false" %><%
+%><%@page import="org.apache.sling.sample.slingshot.SlingshotConstants" %><%
+%><script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/jquery-2.2.0.min.js"></script>
+<script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/bootstrap.min.js"></script>
+<script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/ie10-viewport-bug-workaround.js"></script>
+<script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/slingshot.js"></script>
\ No newline at end of file
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/head.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/head.html.jsp
index 34f4e6e..4f0c00e 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/head.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/head.html.jsp
@@ -17,15 +17,9 @@
     under the License.
 --%><%@page session="false" %><%
 %><%@page import="org.apache.sling.sample.slingshot.SlingshotConstants" %><%
-%><link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/jquery-ui.min.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/jquery-ui.structure.min.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/jquery-ui.theme.min.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/metro-bootstrap.min.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/jquery-breadcrumbs.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/iconFont.css" rel="stylesheet"/>
-  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/slingshot.css" rel="stylesheet"/>
-  <script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/jquery.js" type="text/javascript" ></script>
-  <script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/jquery-ui.min.js" type="text/javascript" ></script>
-  <script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/metro.min.js" type="text/javascript" ></script>
-  <script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/jquery-breadcrumbs.js" type="text/javascript" ></script>
-  <script src="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/js/slingshot.js"> type="text/javascript" </script>  
\ No newline at end of file
+%><meta charset="utf-8">
+  <meta http-equiv="X-UA-Compatible" content="IE=edge">
+  <meta name="viewport" content="width=device-width, initial-scale=1">
+  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/bootstrap.min.css" rel="stylesheet">
+  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/ie10-viewport-bug-workaround.css" rel="stylesheet">
+  <link href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/resources/css/slingshot.css" rel="stylesheet">
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/trail.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/trail.html.jsp
index f36440d..7698c2d 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/trail.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Component/trail.html.jsp
@@ -26,9 +26,8 @@
                   org.apache.sling.api.request.ResponseUtil" %><%
 %><%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %><%
 %><sling:defineObjects/><%
-%><ul id="breadcrumbs" data-home="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/public/<%= request.getRemoteUser() %>.html">
-  <li class="ui-slingshot-clickable" data-link="<%= request.getContextPath() %>/system/sling/logout.html?resource=<%= SlingshotConstants.APP_ROOT_PATH %>.html">Logout</li>
-  <%
+    final boolean isUser = request.getRemoteUser() != null && !request.getRemoteUser().equals("anonymous");
+
     final ValueMap attributes = resource.getValueMap();
     // let's create the trail
     final List<Object[]> parents = new ArrayList<Object[]>();
@@ -50,11 +49,38 @@
             }
         } while ( continueProcessing);
     }  
+%><nav class="navbar navbar-default navbar-fixed-top">
+      <div class="container">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <a class="navbar-brand" href="#">Slingshot</a>
+        </div>
+        <div id="navbar" class="navbar-collapse collapse">
+          <ul class="nav navbar-nav"><%
     for(int k=parents.size()-1;k>=0;k--) {
       %>
-        <li class="ui-slingshot-clickable" data-link="<%= parents.get(k)[0] %>.html"><%= parents.get(k)[1] %></li>
+        <li><a href="<%= parents.get(k)[0] %>.html"><%= parents.get(k)[1] %></a></li>
       <%
     }
-  %>
-</ul>
-
+            %>
+          </ul>
+          <ul class="nav navbar-nav navbar-right">
+          <% if ( isUser ) {
+          %>
+            <li><a href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/users/<%= request.getRemoteUser() %>.html"><span class="glyphicon glyphicon-home" aria-hidden="true"></span></a></li>
+            <li><a href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/users/<%= request.getRemoteUser() %>.html"><span class="glyphicon glyphicon-cog" aria-hidden="true"></span></a></li>
+            <li><a href="<%= request.getContextPath() %>/system/sling/logout.html?resource=<%= SlingshotConstants.APP_ROOT_PATH %>.html"><span class="glyphicon glyphicon-off" aria-hidden="true"></span></a></li>
+          <%
+          } else { %>
+          <li><a href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>.html"><span class="glyphicon glyphicon-log-in" aria-hidden="true"></span></a></li>
+          <%
+          } %>
+          </ul>
+        </div>
+      </div>
+    </nav>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Content/itemlist.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Content/itemlist.html.jsp
index c844857..408a694 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Content/itemlist.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Content/itemlist.html.jsp
@@ -22,7 +22,7 @@
                   org.apache.sling.sample.slingshot.SlingshotConstants" %><%
 %><%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %><%
 %><sling:defineObjects/><%
-%><div class="metro ui-slingshot-content">
+%><div class="container">
  <%
      int i = 0;
      final Iterator<Resource> fi = resource.listChildren();
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Home/html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Home/html.jsp
index 7d90e58..f9b21ae 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Home/html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Home/html.jsp
@@ -31,47 +31,41 @@
     <sling:include resource="<%= resource %>" replaceSelectors="head"/>
   </head>
 
-  <body class="ui-body-app">
+  <body class="login">
     <%
     if ( request.getRemoteUser() != null && !request.getRemoteUser().equals("anonymous") ) {
         %>
-<div class="ui-widget ui-form">
-    <div class="ui-widget-header">
-        <h1>Welcome to SlingShot</h1>
+    <div class="container">
+        <h1 class="bg-primary">Welcome to SlingShot</h1>
+        <p class="bg-primary">Welcome back, <%= request.getRemoteUser() %></p>
+        <p class="bg-warning"><a href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/users/<%= request.getRemoteUser() %>.html">Go to your SlingShot home page</a></p>
     </div>
-    <div class="ui-widget-content">
-       <p>Welcome back, <%= request.getRemoteUser() %></p>
-        <p><a href="<%= request.getContextPath() %><%= SlingshotConstants.APP_ROOT_PATH %>/users/<%= request.getRemoteUser() %>.html">Go to your SlingShot home page</a></p>
-    </div>
- </div>
         <%
     } else {
         %>
-<div class="ui-widget ui-form">
-    <div class="ui-widget-header">
-        <h1>Welcome to SlingShot</h1>
+    <div class="container">
+
+      <form class="form-signin" method="POST" action="<%= request.getContextPath() %><%= resource.getPath() %>.user.html" enctype="multipart/form-data" accept-charset="UTF-8">
+        <input type="hidden" name="_charset_" value="UTF-8" />
+        <input type="hidden" name="resource" value="<%= request.getContextPath() %><%= resource.getPath() %>.user.html" />
+        <p class="form-signin-heading bg-primary">Welcome to SlingShot</p>
+        <label for="j_username" class="sr-only" accesskey="u">Username</label>
+        <input type="text" id="j_username" class="form-control" placeholder="Username" required autofocus>
+        <label for="j_password" class="sr-only" accesskey="p">Password</label>
+        <input type="password" id="j_password" class="form-control" placeholder="Password" required>
+        <p>
+        <button class="btn btn-lg btn-success btn-block" type="submit">Go</button>
+        </p>
+        <p>
+        <button class="btn btn-primary btn-block form-button-new" type="button">New Account</button>
+        <button class="btn btn-info btn-block form-button-help" type="button">Help Me</button>
+        </p>
+      </form>
+
     </div>
-    <div class="ui-widget-content">
-        <form class="ui-form-form" method="POST" action="<%= request.getContextPath() %><%= resource.getPath() %>.user.html" enctype="multipart/form-data" accept-charset="UTF-8">
-          <input type="hidden" name="_charset_" value="UTF-8" />
-          <input type="hidden" name="resource" value="<%= request.getContextPath() %><%= resource.getPath() %>.user.html" />
-          <span class="ui-form-label">
-              <label for="j_username" accesskey="u">Username</label>
-          </span>
-          <input id="j_username" name="j_username" type="text" class="ui-form-field">
-    
-          <span class="ui-form-label">
-              <label for="j_password" accesskey="p">Password</label>
-          </span>
-          <input id="j_password" name="j_password" type="password" class="ui-form-field">
-          <button accesskey="l" class="ui-button ui-form-button ui-form-button-login" type="submit">Go</button>
-          <button accesskey="n" class="ui-button ui-form-button ui-form-button-new" type="button">New Account</button>
-          <button accesskey="n" class="ui-button ui-form-button ui-form-button-help" type="button">Help Me</button>
-        </form>
-    </div>
- </div>
         <%
     }
     %>
 </body>
+    <sling:include resource="<%= resource %>" replaceSelectors="bottom"/>
 </html>
\ No newline at end of file
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/comments.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/comments.html.jsp
index ae6ad8b..74787d6 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/comments.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/comments.html.jsp
@@ -44,12 +44,14 @@
     if ( slingRequest.getAuthType() != null ) {
         %>
         <hr/><p>Leave a comment...</p>
-        <form method="POST" action="<%= request.getContextPath() %><%=resource.getName() %>.comments">
-        <input type="hidden" name=":redirect" value="<%= request.getContextPath() %><%=resource.getPath() %>.html"/>
-        <p>Title: <input name="<%= CommentsUtil.PROPERTY_TITLE %>"/></p>
-        <p>Text: <input name="<%= CommentsUtil.PROPERTY_TEXT %>"/></p>
-        <button class="ui-button ui-form-button" type="submit">Add</button>
-      </form>
+<form class="navbar-form navbar-left" role="comment" method="POST" action="<%= request.getContextPath() %><%=resource.getName() %>.comments">
+  <input type="hidden" name=":redirect" value="<%= request.getContextPath() %><%=resource.getPath() %>.html"/>
+  <div class="form-group">
+    <input type="text" class="form-control" placeholder="Title" name="<%= CommentsUtil.PROPERTY_TITLE %>"/>
+    <input type="text" class="form-control" placeholder="Text" name="<%= CommentsUtil.PROPERTY_TEXT %>"/>
+  </div>
+  <button type="submit" class="ui-button ui-form-button">Add</button>
+</form>
       <%
     }
 %>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/html.jsp
index bfd329a..470a5f5 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/html.jsp
@@ -44,13 +44,21 @@
     <title><%= title %></title>
     <sling:include resource="<%= resource %>" replaceSelectors="head"/>
   </head>
-  <body class="ui-slingshot-main">
+  <body>
     <sling:include resource="<%= resource %>" replaceSelectors="trail"/>
-    <h1><%= title %></h1>
-    <div style="width:100%; display:block; float:left;">
-      <div style="width:70%; float:left; display:block;">
-        <img src="<%= request.getContextPath() %><%= imagePath %>"/>
+    <div class="jumbotron">
+      <div class="container">
+        <h1><%= title %></h1>
+        <p>Explore the world of bla....</p>
       </div>
+    </div>
+    <div class="container">
+    <ul class="nav nav-tabs">
+      <li role="presentation" class="active"><a href="#">Home</a></li>
+      <li role="presentation"><a href="#">Comments</a></li>
+      <li role="presentation"><a href="#">Edit</a></li>
+    </ul>
+        <img class="img-responsive center-block" src="<%= request.getContextPath() %><%= imagePath %>"/>
       <div style="width:30%; float:left; padding:15px; display:block;">
         <p><%=ResponseUtil.escapeXml(attributes.get(SlingshotConstants.PROPERTY_DESCRIPTION, ""))%></p>
         <% if ( attributes.get(SlingshotConstants.PROPERTY_LOCATION) != null ) { %>
@@ -94,8 +102,9 @@
                     </script>
         </div>
       </div>
-    </div>
     <hr/>
     <sling:include resource="<%= resource %>" replaceSelectors="comments"/>
+    </div>
+    <sling:include resource="<%= resource %>" replaceSelectors="bottom"/>
   </body>
 </html>
\ No newline at end of file
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/main.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/main.html.jsp
index 064b9b2..20a793b 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/main.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/Item/main.html.jsp
@@ -26,27 +26,21 @@
 %><%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %><%
 %><sling:defineObjects/><%
 %><%
-    final RatingsService ratingsService = sling.getService(RatingsService.class);
     final ValueMap attr = resource.getValueMap();
     final String itemTitle = attr.get(SlingshotConstants.PROPERTY_TITLE, resource.getName());
     
     String imagePath = null;
-    int count = 0;
     final Resource imagesResource = resource.getResourceResolver().getResource(resource, "images");
     if ( imagesResource != null ) {
         for(final Resource imgResource : imagesResource.getChildren()) {
             if ( imagePath == null ) {
                 imagePath = imgResource.getPath();
+                break;
             }
-            count++;
         }
     }
-%><div class="tile double ui-slingshot-clickable" data-link="<%= request.getContextPath() %><%=resource.getPath()%>.html">
-    <div class="tile-content image">
-        <img src="<%= request.getContextPath() %><%=imagePath%>"/>
-    </div>
-    <div class="brand">
-        <span class="label fg-white"><%= ResponseUtil.escapeXml(itemTitle) %></span>
-        <span class="badge bg-orange"><%= ratingsService.getRating(resource) %></span>
-    </div>
-</div>
+%><div class="col-md-4">
+          <h2><%= ResponseUtil.escapeXml(itemTitle) %></h2>
+          <img class="img-responsive" style="padding-top: 5px" src="<%= request.getContextPath() %><%=imagePath%>"/>
+          <p><a class="btn btn-default" href="<%= request.getContextPath() %><%=resource.getPath()%>.html" role="button">View details &raquo;</a></p>
+        </div>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/html.jsp
index 0cd2fc4..59825d9 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/html.jsp
@@ -30,12 +30,16 @@
     <title><%= title %></title>
     <sling:include resource="<%= resource %>" replaceSelectors="head"/>
   </head>
-  <body class="ui-slingshot-main">
-  <div>
+  <body>
     <sling:include resource="<%= resource %>" replaceSelectors="trail"/>
-    <h1><%= title %></h1>
-    <hr/>
-    <sling:include resource="<%= resource.getChild("content") %>" replaceSelectors="itemlist"/>
-  </div>
+    <!-- Main jumbotron for a primary marketing message or call to action -->
+    <div class="jumbotron">
+      <div class="container">
+        <h1><%= title %></h1>
+        <p>Explore the world of bla....</p>
+      </div>
+    </div>
+    <sling:include resource="<%= resource %>" replaceSelectors="itemlist"/>
+    <sling:include resource="<%= resource %>" replaceSelectors="bottom"/>
 </body>
-</html>
\ No newline at end of file
+</html>
diff --git a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/itemlist.html.jsp b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/itemlist.html.jsp
index c844857..408a694 100644
--- a/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/itemlist.html.jsp
+++ b/slingshot/src/main/resources/SLING-INF/content/libs/slingshot/User/itemlist.html.jsp
@@ -22,7 +22,7 @@
                   org.apache.sling.sample.slingshot.SlingshotConstants" %><%
 %><%@taglib prefix="sling" uri="http://sling.apache.org/taglibs/sling/1.0" %><%
 %><sling:defineObjects/><%
-%><div class="metro ui-slingshot-content">
+%><div class="container">
  <%
      int i = 0;
      final Iterator<Resource> fi = resource.listChildren();