Repository: shiro-site
Updated Branches:
  refs/heads/master c4731cd49 -> 06f534375


Move "related links" sections out of markdown and into a new layout template


Project: http://git-wip-us.apache.org/repos/asf/shiro-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/shiro-site/commit/06f53437
Tree: http://git-wip-us.apache.org/repos/asf/shiro-site/tree/06f53437
Diff: http://git-wip-us.apache.org/repos/asf/shiro-site/diff/06f53437

Branch: refs/heads/master
Commit: 06f5343751250bb41c8b1a13c235e69bc26e8182
Parents: c4731cd
Author: Brian Demers <[email protected]>
Authored: Mon Oct 24 18:09:57 2016 -0400
Committer: Brian Demers <[email protected]>
Committed: Mon Oct 24 18:09:57 2016 -0400

----------------------------------------------------------------------
 assets/js/shiro-site.js          |  10 +-
 authentication-features.md       |  25 ----
 authorization-features.md        |  24 ----
 cas.md.vtl                       |  10 --
 config.scms.groovy               | 217 +++++++++++++++++++++++++++++++++-
 java-authentication-guide.md.vtl |  19 ---
 java-authorization-guide.md.vtl  |  22 ----
 mailing-lists.md                 |  57 ---------
 mailing-lists.md.vtl             |  16 +++
 permissions.md                   |  21 ----
 session-management.md.vtl        |  27 -----
 spring.md                        |  12 --
 templates/default.vtl            |   6 +-
 templates/layouts/related.vtl    |  19 +++
 tutorial.md.vtl                  |  16 ---
 web-features.md                  |  18 ---
 web.md.vtl                       |  25 ----
 17 files changed, 256 insertions(+), 288 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/assets/js/shiro-site.js
----------------------------------------------------------------------
diff --git a/assets/js/shiro-site.js b/assets/js/shiro-site.js
index 9a74c76..19584b2 100644
--- a/assets/js/shiro-site.js
+++ b/assets/js/shiro-site.js
@@ -7,10 +7,10 @@ function addPageEditLink() {
     var ghEditPageElement = $( "#ghEditPage" );
     var editThisPageElement = $(".editThisPage");
 
-        if (ghEditPageElement && ghEditPageElement.val() && 
editThisPageElement) {
-            var relGHPage = ghEditPageElement.val();
+    if (ghEditPageElement && ghEditPageElement.val() && editThisPageElement) {
+        var relGHPage = ghEditPageElement.val();
 
-            var ghEditHref = ghRelHref + relGHPage;
-            editThisPageElement.append("<a href='" + ghEditHref + "'>Edit this 
Page on Github</a>");
-        }
+        var ghEditHref = ghRelHref + relGHPage;
+        editThisPageElement.append("<a href='" + ghEditHref + "'>Edit this 
Page on Github</a>");
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/authentication-features.md
----------------------------------------------------------------------
diff --git a/authentication-features.md b/authentication-features.md
index ffe691f..f98442e 100644
--- a/authentication-features.md
+++ b/authentication-features.md
@@ -8,31 +8,6 @@ The Shiro framework is designed to make authentication as 
clean and intuitive as
 
 ## Features
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px">
-
-<tr>
-<td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="java-authentication-guide.html">Java Authentication 
Guide</a></h3>
-  <p>Learn how Authentication in Java is performed in Shiro. </br><span 
style="font-size:11"><a href="java-authentication-guide.html">Read More 
&gt;&gt;</a></span></p>        
-       
-  <h3><a href="authentication.html">Authentication Docs</a></h3>
-  <p>Full documentation on Shiro's Authentication functionality. </br><span 
style="font-size:11"><a href="authentication.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="get-started.html">Getting Started</a></h3>
-  <p>Resources, guides and tutorials for new Shiro users. </br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p> 
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-</div>
-</td>
-</tr>
-</table>
-
-
 *   **Subject Based** - Almost everything you do in Shiro is based on the 
currently executing user, called a Subject.  And you can easily retrieve the 
Subject anywhere in your code.  This makes it easier for you to understand and 
work with Shiro in your applications.
 
 *   **Single Method call** - The authentication process is a single method 
call.  Needing only one method call keeps the API simple and your application 
code clean, saving you time and effort.

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/authorization-features.md
----------------------------------------------------------------------
diff --git a/authorization-features.md b/authorization-features.md
index 242a0a6..ef2f44a 100644
--- a/authorization-features.md
+++ b/authorization-features.md
@@ -8,30 +8,6 @@ Authorization is a critical element of any application but it 
can quickly become
 
 ## Features
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px">
-
-<tr>
-<td>
-<div id="border">
-  <h2>Related Content</h2>
- 
-  <h3><a href="java-authorization-guide.html">Java Authorization Guide</a></h3>
-  <p>Learn how Shiro handles access control in Java. </br><span 
style="font-size:11"><a href="java-authorization-guide.html">Read More 
&gt;&gt;</a></span></p> 
-       
-  <h3><a href="authorization.html">Authorization Docs</a></h3>
-  <p>Full documentation on Apache Shiro's Authorization functionality. 
</br><span style="font-size:11"><a href="authorization.html">Read More 
&gt;&gt;</a></span></p>
-  
-       <h3><a href="get-started.html">Getting Started</a></h3>
-  <p>Resources, guides and tutorials for new Shiro users. </br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p> 
-
-       <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-</div>
-</td>
-</tr>
-</table>
-
 *   **Subject-based** - Almost everything you do in Shiro is based on the 
currently executing user, called a Subject.  And you can easily access the 
subject retrieve the Subject and checks its roles, permissions, or other 
relevant attributes anywhere in your code.  This makes it easier for you to 
understand and work with Shiro in your applications.
 
 *   **Checks based on roles or permissions** - Since the complexity of 
authorization differs greatly between applications, Shiro is designed to be 
flexible, supporting both role-based security and permission-based security 
based on your projects needs.

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/cas.md.vtl
----------------------------------------------------------------------
diff --git a/cas.md.vtl b/cas.md.vtl
index 070139b..18ad339 100644
--- a/cas.md.vtl
+++ b/cas.md.vtl
@@ -4,16 +4,6 @@ Integrating Apache Shiro with CAS SSO server
 
 #warning('NOTE:', 'Shiro-CAS support is deprecated, support has been moved to 
the Apache Shiro based <a 
href="https://github.com/bujiio/buji-pac4j";>buji-pac4j</a> project.')
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tbody><tr><td>
-<div id="border">
-       
-  <h2>Related Content</h2>
-  <h3><a href="web-features.html">Web Apps with Shiro</a></h3>
-  <p>Learn more about integrating Shiro into web applications. <br><span 
style="font-size:11"><a href="web-features.html">Read More 
&gt;&gt;</a></span></p>
-       
-</div>
-</td></tr></tbody></table>
-
 The _shiro-cas_ module is made to protect a web application with a [Jasig 
CAS](https://wiki.jasig.org/display/CAS/Home) SSO server. It enables a 
Shiro-enabled application to be a CAS client.
 
 <a name="CAS-BasicunderstandingoftheCASprotocol"></a>

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/config.scms.groovy
----------------------------------------------------------------------
diff --git a/config.scms.groovy b/config.scms.groovy
index 2b344f2..48ddbc8 100644
--- a/config.scms.groovy
+++ b/config.scms.groovy
@@ -8,37 +8,242 @@ scms {
     //    year = Calendar.getInstance.get(Calendar.YEAR)
     //}
 
+    // [title: 'title', href: 'href', brief: 'brief'],
+
+
+
+    gettingStartedLink = [title: 'Getting Started', href: 'get-started.html', 
brief: 'Resources, guides and tutorials for new Shiro users.']
+    tenMinuiteTutorialLink = [title: '10-Minute Shiro Tutorial', href: 
'10-minute-tutorial.html', brief: 'Try Apache Shiro for yourself in under 10 
minutes.']
+    webAppTutorialLink = [title: 'Web App Tutorial', href: 
'webapp-tutorial.html', brief: 'Step-by-step tutorial for securing a web 
application with Shiro.']
+    authcGuideLink = [title: 'Java Authentication Guide', href: 
'java-authentication-guide.html', brief: 'Learn how Authentication in Java is 
performed in Shiro.']
+    authzGuideLink = [title: 'Java Authorization Guide', href: 
'java-authorization-guide.html', brief: 'Learn how Shiro handles access control 
in Java.']
+    webLink = [title: 'Web Apps with Shiro', href: 'web.html', brief: 
'Detailed support for integrating Shiro into web applications.']
+    webFeaturesLink = [title: 'Web Apps with Shiro', href: 
'web-features.html', brief: 'Learn more about integrating Shiro into web 
applications.']
+    authzDocs = [title: 'Authorization Docs', href: 'authorization.html', 
brief: 'Full documentation on Apache Shiro\'s Authorization functionality.']
+    authcDocs = [title: 'Authentication Docs', href: 'authentication.html', 
brief: 'Full documentation on Shiro\'s Authentication functionality.']
+
+
+
+    authcGuideRelatedLinks = [
+            [title: 'Authentication Features', href: 
'authentication-features.html', brief: 'Quick overview of easy, subject-based 
authentication in Shiro.'],
+            authcDocs,
+            tenMinuiteTutorialLink,
+            webAppTutorialLink
+    ]
+
+    authcFeaturesRelatedLinks = [
+            authcGuideLink,
+            authcDocs,
+            gettingStartedLink,
+            webAppTutorialLink
+    ]
+
+
+    authzFeaturesRelatedLinks = [
+            authzGuideLink,
+            authzDocs,
+            gettingStartedLink,
+            webAppTutorialLink
+    ]
+
+    casRelatedLinks = [
+            webFeaturesLink
+    ]
+
+    authzGuideRelatedLinks = [
+            [title: 'Authorization Features', href: 
'authorization-features.html', brief: 'Quick overview of permissions, roles, 
and users in Shiro.'],
+            [title: 'Authorization Docs', href: 'authorization.html', brief: 
'Full documentation on Apache Shiro\'s Authorization functionality.'],
+            gettingStartedLink,
+            tenMinuiteTutorialLink,
+            webAppTutorialLink
+    ]
+
+    permissionsRelatedLinks = [
+            authzGuideLink,
+            webAppTutorialLink,
+            gettingStartedLink,
+            tenMinuiteTutorialLink
+    ]
+    sessionManagementRelatedLinks = [
+            gettingStartedLink,
+            tenMinuiteTutorialLink,
+            webAppTutorialLink,
+            authcGuideLink,
+            authzGuideLink
+    ]
+
+    springRelatedLinks = [
+            webLink,
+            webAppTutorialLink
+    ]
+
+    tutorialRelatedLinks = [
+            gettingStartedLink,
+            tenMinuiteTutorialLink,
+            webAppTutorialLink,
+    ]
+
+    webFeaturesRelatedLinks = [
+            webAppTutorialLink,
+            webLink
+    ]
+
+    webRelatedLinks = [
+            webFeaturesLink,
+            webAppTutorialLink,
+            [title: 'Session Management', href: 
'session-management-features.html', brief: 'Shiro enables sessions for any 
application environment. Learn more!'],
+            [title: 'Permissions', href: 'permissions.html', brief: 'Learn 
more about Shiro\'s powerful and intuitive permission syntax.'],
+            authcGuideLink,
+            authzGuideLink
+    ]
+
     patterns {
 
-        'static/**/*.html' {
-            template = 'templates/none.vtl'
+        '**/web.md.vtl' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = webRelatedLinks
+                topSpacing = '60px'
+            }
         }
 
-        '**/*.html' {
+        '**/web-features.md' {
             template = 'templates/default.vtl'
             model {
                 //the above template uses the year for a copyright notice:
                 year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = webFeaturesRelatedLinks
+
             }
         }
 
-        '**/*.md' {
+        '**/session-management.md.vtl' {
             template = 'templates/default.vtl'
             model {
                 //the above template uses the year for a copyright notice:
                 year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = sessionManagementRelatedLinks
+                topSpacing = '60px'
+
             }
         }
 
-        '**/*.vtl' {
+        '**/tutorial.md.vtl' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = tutorialRelatedLinks
+                topSpacing = '60px'
+
+            }
+        }
+
+        '**/spring.md' {
             template = 'templates/default.vtl'
             model {
                 //the above template uses the year for a copyright notice:
                 year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = springRelatedLinks
+
+            }
+        }
+
+        '**/permissions.md' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = permissionsRelatedLinks
+                topSpacing = '60px'
+
+            }
+        }
+
+        '**/java-authentication-guide.md.vtl' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = authcGuideRelatedLinks
+
             }
         }
 
-        '**/*.md.vtl' {
+        '**/java-authorization-guide.md.vtl' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = authzGuideRelatedLinks
+
+            }
+        }
+
+        '**/authentication-features.md' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = authzGuideRelatedLinks
+
+            }
+        }
+
+        '**/authorization-features.md' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = authcFeaturesRelatedLinks
+
+            }
+        }
+
+        '**/cas.md.vtl' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+                layout = 'templates/layouts/related.vtl'
+                relatedLinks = casRelatedLinks
+
+            }
+        }
+
+        'static/**/*.html' {
+            template = 'templates/none.vtl'
+        }
+
+        '**/*.html' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+            }
+        }
+
+        '**/*.md' {
+            template = 'templates/default.vtl'
+            model {
+                //the above template uses the year for a copyright notice:
+                year = Calendar.getInstance().get(Calendar.YEAR)
+            }
+        }
+
+        '**/*.vtl' {
             template = 'templates/default.vtl'
             model {
                 //the above template uses the year for a copyright notice:

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/java-authentication-guide.md.vtl
----------------------------------------------------------------------
diff --git a/java-authentication-guide.md.vtl b/java-authentication-guide.md.vtl
index cbbde6f..056f784 100644
--- a/java-authentication-guide.md.vtl
+++ b/java-authentication-guide.md.vtl
@@ -10,25 +10,6 @@ The goal of this guide is to walk you through how 
Authentication in Java is perf
 Terminology you'll need
 -----------------------
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tr><td>
-<div id="border">
-  <h2>Related Content</h2>
-
-  <h3><a href="authentication-features.html">Authentication Features</a></h3>
-  <p>Quick overview of easy, subject-based authentication in Shiro. </br><span 
style="font-size:11"><a href="authentication-features.html">Read More 
&gt;&gt;</a></span></p>
-
-  <h3><a href="authentication.html">Authentication Docs</a></h3>
-  <p>Full documentation on Apache Shiro's Authentication functionality. 
</br><span style="font-size:11"><a href="authentication.html">Read More 
&gt;&gt;</a></span></p>
-
-       <h3><a href="10-minute-tutorial.html">10-Minute Shiro Tutorial</a></h3>
-  <p>Try Apache Shiro for yourself in under 10 minutes. </br><span 
style="font-size:11"><a href="10-minute-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-
-       <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-
-</div>
-</td></tr></table>
-
 *   **Subject** - Security specific user 'view' of an application user. It can 
be a human being, a third-party process, a server connecting to you application 
application, or even a cron job. Basically, it is anything or anyone 
communicating with your application.
 
 *   **Principals** - A subjects identifying attributes. First name, last name, 
social security number, username

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/java-authorization-guide.md.vtl
----------------------------------------------------------------------
diff --git a/java-authorization-guide.md.vtl b/java-authorization-guide.md.vtl
index 0ee581d..0794b4c 100644
--- a/java-authorization-guide.md.vtl
+++ b/java-authorization-guide.md.vtl
@@ -15,28 +15,6 @@ Authorization has three core elements that we reference 
quite a bit in Shiro-- p
 <a name="JavaAuthorizationGuide-PermissionsDefined"></a>
 #[[###Permissions Defined]]#
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tr><td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="authorization-features.html">Authorization Features</a></h3>
-  <p>Quick overview of permissions, roles, and users in Shiro. </br><span 
style="font-size:11"><a href="authorization-features.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="authorization.html">Authorization Docs</a></h3>
-  <p>Full documentation on Apache Shiro's Authorization functionality. 
</br><span style="font-size:11"><a href="authorization.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="get-started.html">Getting Started</a></h3>
-  <p>Resources, guides and tutorials for new Shiro users. </br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p> 
-       
-  <h3><a href="10-minute-tutorial.html">10-Minute Shiro Tutorial</a></h3>
-  <p>Try Apache Shiro for yourself in under 10 minutes. </br><span 
style="font-size:11"><a href="10-minute-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-</div>
-</td></tr></table>
-
 Permissions are the most atomic level of a security policy and they are 
statements of functionality. Permissions represent what can be done in your 
application. A well formed permission describes a resource types and what 
actions are possible when you interact with those resources. Can you _open_ a 
_door_? Can you _read_ a _file_? Can you _delete_ a _customer record_? Can you 
_push_ a _button_?
 
 Common actions for data-related resources are create, read, update, and 
delete, commonly referred to as CRUD.

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/mailing-lists.md
----------------------------------------------------------------------
diff --git a/mailing-lists.md b/mailing-lists.md
deleted file mode 100644
index 9b7b3f8..0000000
--- a/mailing-lists.md
+++ /dev/null
@@ -1,57 +0,0 @@
-<a name="MailingLists-ApacheShiroMailingLists"></a>
-#Apache Shiro Mailing Lists
-
-<!-- Markdown tables need some style before switchig
-| List Name            | List Address                      | Subscribe         
                                     | Unsubscribe                              
                  | ASF Archive                                                 
           | Nabble (Online Forums)                                             
      |
-|----------------------|-----------------------------------|--------------------------------------------------------|------------------------------------------------------------|------------------------------------------------------------------------|--------------------------------------------------------------------------|
-| Shiro User List      | [mailto:[email protected]]    | 
[Subscribe](mailto:[email protected])    | 
[Unsubscribe](mailto:[email protected])    | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-user/)    | [Nabble 
Forum and Archive](http://shiro-user.582556.n2.nabble.com/)      |
-| Shiro Developer List | [mailto:[email protected]]     | 
[Subscribe](mailto:[email protected])     | 
[Unsubscribe](mailto:[email protected])     | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-dev)      | [Nabble 
Forum and Archive](http://shiro-developer.582600.n2.nabble.com/) |
-| Shiro SCM List       | [mailto:[email protected]] | 
[Subscribe](mailto:[email protected]) | 
[Unsubscribe](mailto:[email protected]) | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-commits/) |             
                                                             |
--->
-
-<div class="table-wrap">
-    <table class="confluenceTable">
-        <tbody>
-        <tr>
-            <th colspan="1" rowspan="1" class="confluenceTh"> List Name</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> List Address</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Subscribe</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Unsubscribe</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> ASF Archive</th>
-            <th colspan="1" rowspan="1" class="confluenceTh"> Nabble (Online 
Forums)</th>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro User 
List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">[email protected]</a>
-            </td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" 
href="http://mail-archives.apache.org/mod_mbox/shiro-user/";>ASF Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="http://shiro-user.582556.n2.nabble.com/"; 
rel="nofollow">Nabble Forum and Archive</a></td>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro Developer 
List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">[email protected]</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" 
href="http://mail-archives.apache.org/mod_mbox/shiro-dev/";>ASF Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="http://shiro-developer.582600.n2.nabble.com/"; 
rel="nofollow">Nabble Forum and Archive</a></td>
-        </tr>
-        <tr>
-            <td colspan="1" rowspan="1" class="confluenceTd"> Shiro SCM 
List</td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">[email protected]</a> </td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Subscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" href="mailto:[email protected]"; 
rel="nofollow">Unsubscribe</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"><a 
class="external-link" 
href="http://mail-archives.apache.org/mod_mbox/shiro-commits/";>ASF 
Archive</a></td>
-            <td colspan="1" rowspan="1" class="confluenceTd"></td>
-        </tr>
-        </tbody>
-    </table>
-</div>
-
-
-<a name="MailingLists-DiscussionForums"></a>
-###Discussion Forums
-
-If you prefer you could use our discussion [Forums](forums.html "Forums") 
which are sync'd with the above mailing lists.
-<input type="hidden" id="ghEditPage" value="mailing-lists.md"></input>

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/mailing-lists.md.vtl
----------------------------------------------------------------------
diff --git a/mailing-lists.md.vtl b/mailing-lists.md.vtl
new file mode 100644
index 0000000..2d0c604
--- /dev/null
+++ b/mailing-lists.md.vtl
@@ -0,0 +1,16 @@
+#mdStyle()
+
+<a name="MailingLists-ApacheShiroMailingLists"></a>
+#Apache Shiro Mailing Lists
+
+| List Name            | List Address                                          
      | Subscribe                                              | Unsubscribe    
                                            | ASF Archive                       
                                     | Nabble (Online Forums)                   
                                |
+|----------------------|-------------------------------------------------------------|--------------------------------------------------------|------------------------------------------------------------|------------------------------------------------------------------------|--------------------------------------------------------------------------|
+| Shiro User List      | [[email protected]](mailto:[email protected]) 
      | [Subscribe](mailto:[email protected])    | 
[Unsubscribe](mailto:[email protected])    | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-user/)    | [Nabble 
Forum and Archive](http://shiro-user.582556.n2.nabble.com/)      |
+| Shiro Developer List | [[email protected]](mailto:[email protected]) 
        | [Subscribe](mailto:[email protected])     | 
[Unsubscribe](mailto:[email protected])     | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-dev/)     | [Nabble 
Forum and Archive](http://shiro-developer.582600.n2.nabble.com/) |
+| Shiro SCM List       | 
[[email protected]](mailto:[email protected]) | 
[Subscribe](mailto:[email protected]) | 
[Unsubscribe](mailto:[email protected]) | [ASF 
Archive](http://mail-archives.apache.org/mod_mbox/shiro-commits/) |             
                                                             |
+
+<a name="MailingLists-DiscussionForums"></a>
+###Discussion Forums
+
+If you prefer you could use our discussion [Forums](forums.html "Forums") 
which are sync'd with the above mailing lists.
+<input type="hidden" id="ghEditPage" value="mailing-lists.md"></input>

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/permissions.md
----------------------------------------------------------------------
diff --git a/permissions.md b/permissions.md
index 304d2ea..2db1534 100644
--- a/permissions.md
+++ b/permissions.md
@@ -1,26 +1,5 @@
 # <a 
name="Permissions-UnderstandingPermissionsinApacheShiro"></a>Understanding 
Permissions in Apache Shiro
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tbody><tr><td>
-
-<div id="border">
-    <h2>Related Content</h2>
-
-    <h3><a href="java-authorization-guide.html">Java Authorization 
Guide</a></h3>
-    <p>Learn how Shiro handles access control in Java. <br><span 
style="font-size:11"><a href="java-authorization-guide.html">Read More 
&gt;&gt;</a></span></p>
-
-    <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-    <p>Step-by-step tutorial for securing a web application with Shiro. 
<br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-
-    <h3><a href="get-started.html">Getting Started</a></h3>
-    <p>Resources, guides and tutorials for new Shiro users. <br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p>
-
-    <h3><a href="10-minute-tutorial.html">10-Minute Shiro Tutorial</a></h3>
-    <p>Try Apache Shiro for yourself in under 10 minutes. <br><span 
style="font-size:11"><a href="10-minute-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-
-</div>
-
-</td></tr></tbody></table>
-
 Shiro defines a Permission as a statement that defines an explicit behavior or 
action. It is a statement of raw functionality in an application and nothing 
more. Permissions are the lowest-level constructs in security polices, and they 
explicitly define only "what" the application can do.
 
 They do _not_ at all describe "who" is able to perform the action(s).

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/session-management.md.vtl
----------------------------------------------------------------------
diff --git a/session-management.md.vtl b/session-management.md.vtl
index 9c22d97..1594dbe 100644
--- a/session-management.md.vtl
+++ b/session-management.md.vtl
@@ -1,33 +1,6 @@
 <a name="SessionManagement-SessionManagement"></a>
 #[[#Session Management]]#
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px">
-
-<tr>
-<td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="get-started.html">Getting Started</a></h3>
-  <p>Resources, guides and tutorials for new Shiro users. </br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p> 
-       
-  <h3><a href="10-minute-tutorial.html">10-Minute Shiro Tutorial</a></h3>
-  <p>Try Apache Shiro for yourself in under 10 minutes. </br><span 
style="font-size:11"><a href="10-minute-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="java-authentication-guide.html">Java Authentication 
Guide</a></h3>
-  <p>Learn how Authentication in Java is performed in Shiro. </br><span 
style="font-size:11"><a href="java-authentication-guide.html">Read More 
&gt;&gt;</a></span></p>        
-       
-  <h3><a href="java-authorization-guide.html">Java Authorization Guide</a></h3>
-  <p>Learn how Shiro handles access control in Java. </br><span 
style="font-size:11"><a href="java-authorization-guide.html">Read More 
&gt;&gt;</a></span></p> 
-
-</div>
-</td>
-</tr>
-</table>
-
 *   [Using Sessions](#SessionManagement-UsingSessions)
 *   [The SessionManager](#SessionManagement-TheSessionManager)
 

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/spring.md
----------------------------------------------------------------------
diff --git a/spring.md b/spring.md
index 2e97ad6..7f673ff 100644
--- a/spring.md
+++ b/spring.md
@@ -1,18 +1,6 @@
 <a name="Spring-IntegratingApacheShirointoSpringbasedApplications"></a>
 #Integrating Apache Shiro into Spring-based Applications
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tbody><tr><td>
-<div id="border">
-        
-  <h3><a href="web.html">Web Apps with Shiro</a></h3>
-  <p>Detailed support for integrating Shiro into web applications. <br><span 
style="font-size:11"><a href="web.html">Read More &gt;&gt;</a></span></p>
-    
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
<br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-
-</div>
-</td></tr></tbody></table>
-
 This page covers the ways to integrate Shiro into 
[Spring](http://spring.io)-based applications.
 
 Shiro's JavaBeans compatibility makes it perfectly suited to be configured via 
Spring XML or other Spring-based configuration mechanisms. Shiro applications 
need an application singleton `SecurityManager` instance. Note that this does 
not have to be a _static_ singleton, but there should only be a single instance 
used by the application, whether its a static singleton or not.

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/templates/default.vtl
----------------------------------------------------------------------
diff --git a/templates/default.vtl b/templates/default.vtl
index bcec194..645d18a 100644
--- a/templates/default.vtl
+++ b/templates/default.vtl
@@ -94,7 +94,11 @@
 
         <div id="content">
 
-            $content
+            #if ($layout)
+                #parse($layout)
+            #else
+                $content
+            #end
 
         </div>
 

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/templates/layouts/related.vtl
----------------------------------------------------------------------
diff --git a/templates/layouts/related.vtl b/templates/layouts/related.vtl
new file mode 100644
index 0000000..2e05bc6
--- /dev/null
+++ b/templates/layouts/related.vtl
@@ -0,0 +1,19 @@
+
+#if (!$topSpacing)
+    #set($topSpacing = '200px')
+#end
+
+<!-- spacer allows enough room to display the header -->
+<div id="spacer" style="width: 0; height: $topSpacing; float: left"></div>
+
+<!-- related content (if any) -->
+  #if ($relatedLinks)
+  <div style="border-style: solid; border-width: 2px; border-color: navy; 
padding: 5px; margin-left: 20px; margin-bottom: 20px; width:275px; float: 
right; clear: both; ">
+      <h2>Related Content</h2>
+        #foreach( $item in $relatedLinks )
+            <h3><a href="$item.href">$item.title</a></h3>
+            <p>$item.brief</br><span style="font-size:11"><a 
href="$item.href">Read More &gt;&gt;</a></span></p>
+        #end
+  </div>
+  #end
+$content
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/tutorial.md.vtl
----------------------------------------------------------------------
diff --git a/tutorial.md.vtl b/tutorial.md.vtl
index bc5e121..2002c73 100644
--- a/tutorial.md.vtl
+++ b/tutorial.md.vtl
@@ -2,22 +2,6 @@
 Apache Shiro Tutorial
 =====================
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tr><td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="get-started.html">Getting Started</a></h3>
-  <p>Resources, guides and tutorials for new Shiro users. </br><span 
style="font-size:11"><a href="get-started.html">Read More 
&gt;&gt;</a></span></p> 
-       
-       <h3><a href="10-minute-tutorial.html">10-Minute Shiro Tutorial</a></h3>
-  <p>Try Apache Shiro for yourself in under 10 minutes. </br><span 
style="font-size:11"><a href="10-minute-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-</div>
-</td></tr></table>
-
 <a name="Tutorial-YourFirstApacheShiroApplication"></a>
 Your First Apache Shiro Application
 -----------------------------------

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/web-features.md
----------------------------------------------------------------------
diff --git a/web-features.md b/web-features.md
index 93f1658..1597034 100644
--- a/web-features.md
+++ b/web-features.md
@@ -8,24 +8,6 @@ Although Apache Shiro is designed to be used to secure _any_ 
JVM-based applicati
        
 ##Features
 
-<table align="right" width="275" style="margin-left: 15px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px">
-
-<tr>
-<td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="web.html">Web Support Docs</a></h3>
-  <p>Detailed support for integrating Shiro into web applications. </br><span 
style="font-size:11"><a href="web.html">Read More &gt;&gt;</a></span></p>
-       
-</div>
-</td>
-</tr>
-</table>
-
 * **Simple ShiroFilter web.xml definition** 
 You can enable Shiro for a web application with one simple filter definition 
in web.xml.
 

http://git-wip-us.apache.org/repos/asf/shiro-site/blob/06f53437/web.md.vtl
----------------------------------------------------------------------
diff --git a/web.md.vtl b/web.md.vtl
index 6b8e3f0..8c4be46 100644
--- a/web.md.vtl
+++ b/web.md.vtl
@@ -4,31 +4,6 @@
 Apache Shiro Web Support
 ========================
 
-<table align="right" width="275" style="margin-left: 20px; margin-bottom: 
20px; border-style: solid; border-width: 2px; border-color: navy" 
cellpadding="10px"><tr><td>
-<div id="border">
-  <h2>Related Content</h2>
-       
-  <h3><a href="web-features.html">Web Apps with Shiro</a></h3>
-  <p>Learn more about integrating Shiro into web applications. </br><span 
style="font-size:11"><a href="web-features.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="webapp-tutorial.html">Web App Tutorial</a></h3>
-  <p>Step-by-step tutorial for securing a web application with Shiro. 
</br><span style="font-size:11"><a href="webapp-tutorial.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="session-management-features.html">Session Management</a></h3>
-  <p>Shiro enables sessions for any application environment. Learn more! 
</br><span style="font-size:11"><a href="session-management-features.html">Read 
More &gt;&gt;</a></span></p>
-       
-  <h3><a href="permissions.html">Permissions</a></h3>
-  <p>Learn more about Shiro's powerful and intuitive permission syntax. 
</br><span style="font-size:11"><a href="permissions.html">Read More 
&gt;&gt;</a></span></p>
-       
-  <h3><a href="java-authentication-guide.html">Java Authentication 
Guide</a></h3>
-  <p>Learn how Authentication in Java is performed in Shiro. </br><span 
style="font-size:11"><a href="java-authentication-guide.html">Read More 
&gt;&gt;</a></span></p>        
-       
-  <h3><a href="java-authorization-guide.html">Java Authorization Guide</a></h3>
-  <p>Learn how Shiro handles access control in Java. </br><span 
style="font-size:11"><a href="java-authorization-guide.html">Read More 
&gt;&gt;</a></span></p> 
-
-</div>
-</td></tr></table>
-
 *   [Configuration](#Web-Configuration)
 
     *   [`web.xml`](#Web-%7B%7Bweb.xml%7D%7D)

Reply via email to