You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2015/05/07 10:04:49 UTC

isis git commit: ISIS-1133: more adocs for wicket viewer

Repository: isis
Updated Branches:
  refs/heads/master b8fc8650e -> 5d5f10657


ISIS-1133: more adocs for wicket viewer


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/5d5f1065
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/5d5f1065
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/5d5f1065

Branch: refs/heads/master
Commit: 5d5f106571a54e1245d59aaa00dc028772e17e0f
Parents: b8fc865
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu May 7 09:04:38 2015 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu May 7 09:04:38 2015 +0100

----------------------------------------------------------------------
 .../user-guide/_/tips-and-workarounds.adoc      |  47 -------
 .../asciidoc/user-guide/_/titles-in-tables.md   |  78 ----------
 .../user-guide/_/writing-a-custom-theme.adoc    |  32 +++++
 .../_user-guide_extending_wicket-viewer.adoc    |  23 ++-
 ...ow-tos_ui-hints_object-titles-and-icons.adoc |  76 +++++++++-
 ...objects-viewer_configuration_properties.adoc |  16 +--
 ..._runtime-configuration_configuring-core.adoc |   4 +-
 ...-guide_runtime-configuration_properties.adoc |   5 -
 ..._wicket-viewer_configuration_properties.adoc |  93 +++++++++---
 .../_user-guide_wicket-viewer_features.adoc     | 141 ++++++++++++++++++-
 .../cust-order-product.png                      | Bin 0 -> 11125 bytes
 .../password-reset/login-page-default.png       | Bin 11372 -> 0 bytes
 .../login-page-suppress-password-reset.png      | Bin 10615 -> 0 bytes
 .../remember-me/login-page-default.png          | Bin 11372 -> 0 bytes
 .../login-page-suppress-remember-me.png         | Bin 10935 -> 0 bytes
 .../sign-up/login-page-default.png              | Bin 11372 -> 0 bytes
 .../sign-up/login-page-suppress-sign-up.png     | Bin 10273 -> 0 bytes
 .../login-page-default.png                      | Bin 0 -> 11372 bytes
 .../login-page-suppress-password-reset.png      | Bin 0 -> 10615 bytes
 .../suppress-remember-me/login-page-default.png | Bin 0 -> 11372 bytes
 .../login-page-suppress-remember-me.png         | Bin 0 -> 10935 bytes
 .../suppress-sign-up/login-page-default.png     | Bin 0 -> 11372 bytes
 .../login-page-suppress-sign-up.png             | Bin 0 -> 10273 bytes
 .../user-registration/login-page-default.png    | Bin 0 -> 11372 bytes
 .../sign-up-after-registration.png              | Bin 0 -> 45653 bytes
 .../sign-up-email-with-verification-link.png    | Bin 0 -> 11960 bytes
 .../sign-up-login-page-after-sign-up.png        | Bin 0 -> 13570 bytes
 .../user-registration/sign-up-page.png          | Bin 0 -> 8911 bytes
 .../sign-up-registration-page.png               | Bin 0 -> 11446 bytes
 29 files changed, 353 insertions(+), 162 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_/tips-and-workarounds.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_/tips-and-workarounds.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_/tips-and-workarounds.adoc
deleted file mode 100644
index b75e92d..0000000
--- a/adocs/documentation/src/main/asciidoc/user-guide/_/tips-and-workarounds.adoc
+++ /dev/null
@@ -1,47 +0,0 @@
-Title: Rendering of abstract properties in tables
-
-____
-
-For more info, see https://issues.apache.org/jira/browse/ISIS-582[ISIS-582].
-
-____
-
-Suppose you have a hierarchy of classes where a property is derived and abstract in the superclass, concrete implementations in the subclasses. For example:
-
-[source]
-----
-public abstract class LeaseTerm {
-    ...
-    public abstract BigDecimal getEffectiveValue(); 
-    ...
-}
-
-public class LeaseTermForIndexableTerm extends LeaseTerm {
-    ...
-    public BigDecimal getEffectveValue() { ... }
-    ...
-}
-----
-
-Currently the Wicket viewer will not render the property in tables (though the property is correctly rendered in views):
-
-The work-around is simple enough; make the method concrete in the superclass and return a dummy implementation, eg:
-
-[source]
-----
-public abstract class LeaseTerm {
-    ...
-    public BigDecimal getEffectiveValue() {
-        // workaround for ISIS-582
-        return null;
-    }
-    ...
-}
-----
-
-Alternatively the implementation could throw a `RuntimeException`, eg 
-
-[source]
-----
-throw new RuntimeException("never called; workaround for ISIS-582");
-----
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_/titles-in-tables.md
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_/titles-in-tables.md b/adocs/documentation/src/main/asciidoc/user-guide/_/titles-in-tables.md
deleted file mode 100644
index d9b194d..0000000
--- a/adocs/documentation/src/main/asciidoc/user-guide/_/titles-in-tables.md
+++ /dev/null
@@ -1,78 +0,0 @@
-Title: Titles in Tables
-
-[//]: # (content copied to _user-guide_xxx)
-
-Object titles can often be quite long if the intention is to uniquely identify the object.  While this is appropriate for the object view, it can be cumbersome within tables.
-
-Isis' Wicket viewer implements two features to shorten these titles.
-
-### Excluding parent context (@Title annotation)
-
-The first feature to shorten the title in tables is to automatically exclude the title of the parent object.  This can be done when the `@Title` annotation is used.
-
-For example, suppose we have:
-
-![](images/cust-order-product.png)
-
-where the `Order` class references both `Customer` and `Product`.  It's title might involve each of these:
-
-  public class Order {
-    @Title(sequence="1")
-    public Customer getCustomer() { ... }
-    
-    @Title(sequence="2")
-    public Product getProduct() { ... }
-    
-    @Title(sequence="3")
-    public String getOtherInfo() { ... }
-    
-    ...
-  }
-
-In this case, if we view the `Order` from the context of `Customer` (that is, within a parented collection's table) then the customer's property will be automatically excluded from the title of the `Order`.
-
-Incidentally, this feature is closely related to the 
-`@Hidden(where=Where.REFERENCES_PARENT)` annotation, which will cause the property itself to be hidden as a column in the table.  An Isis idiom is therefore:
-
-  public class Order {
-    @Title(sequence="1")
-    @Hidden(where=Where.REFERENCES_PARENT)
-    public Customer getCustomer() { ... }
-    
-    ...
-  }
-
-The above annotations mean that titles usually "just work", altering according to the context in which they are viewed.
-
-### Abbreviating titles
-
-The second feature that the Wicket viewer supports is to truncate titles longer than a certain length.  This is done using properties specific to the Wicket viewer.
-
-#### Viewer-specific configuration file
-
-Because these configuration properties to be set up *are* specific to the Wicket viewer, it is good practice to put them into their own configuration file, `WEB-INF/viewer_wicket.properties`.  (You can put them into the regular `WEB-INF/isis.properties` file if you wish, though).
-
-To have Isis pick up this configuration file, add the following to `WEB-INF/web.xml`:
-
-    <context-param>
-        <param-name>isis.viewers</param-name>
-        <param-value>wicket</param-value>
-    </context-param>
-
-If there is more than one viewer configured in the webapp, specify them as a comma-separated list, eg `wicket,restfulobjects`.
-
-
-#### The configuration properties
-
-The properties themselves are:
-
-    isis.viewer.wicket.maxTitleLengthInStandaloneTables=20
-    isis.viewer.wicket.maxTitleLengthInParentedTables=8
-
-If you wish to use the same value in both cases, you can also specify just:
-
-    isis.viewer.wicket.maxTitleLengthInTables=15
-
-This is used as a fallback if the more specific properties are not provided.
-
-If no properties are provided, then the Wicket viewer defaults to abbreviating titles to a length of `12`.

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_/writing-a-custom-theme.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_/writing-a-custom-theme.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_/writing-a-custom-theme.adoc
new file mode 100644
index 0000000..df5cc03
--- /dev/null
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_/writing-a-custom-theme.adoc
@@ -0,0 +1,32 @@
+Title: Writing a Custom Theme (1.8.0)
+
+The Isis Wicket viewer uses http://getbootstrap.com/[Bootstrap] styles and components (courtesy of the
+https://github.com/l0rdn1kk0n/wicket-bootstrap[Wicket Bootstrap] integration).
+
+By default the viewer uses the default bootstrap theme. As described link:showing-a-theme-chooser.html[here], it is
+possible to allow the user to select other themes provided by http://bootswatch.com[bootswatch.com], and if required
+one of these can be link:specifying-a-default-theme.html[set as the default].
+
+However, you may instead want to write your own custom theme, for example to fit your company's look-n-feel/interface
+guidelines. This is done by implementing https://github.com/l0rdn1kk0n/wicket-bootstrap[Wicket Bootstrap]’s
+`de.agilecoders.wicket.core.settings.ITheme` class. This defines: 
+
+* the name of the theme
+* the resources it needs (the CSS and optional JS and/or fonts), and
+* optional urls to load them from a Content Delivery Network (CDN).
+
+To make use of the custom `ITheme` the application should register it by adding the following snippet in
+(your application's subclass of) `IsisWicketApplication`:
+
+[source]
+----
+public void init() {
+
+    ...
+    IBootstrapSettings settings = new BootstrapSettings();
+    ThemeProvider themeProvider = new SingleThemeProvider(new MyTheme());
+    settings.setThemeProvider(themeProvider);
+
+    Bootstrap.install(getClass(), settings);
+}
+----
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_extending_wicket-viewer.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_extending_wicket-viewer.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_extending_wicket-viewer.adoc
index 9998480..67d4b88 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_extending_wicket-viewer.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_extending_wicket-viewer.adoc
@@ -19,8 +19,29 @@ The first two of these options are discussed in the <<Wicket Viewer>> chapter.
 
 == Custom Bootstrap theme
 
-IMPORTANT: TODO
+The Isis Wicket viewer uses http://getbootstrap.com/[Bootstrap] styles and components (courtesy of the https://github.com/l0rdn1kk0n/wicket-bootstrap[Wicket Bootstrap] integration).
+
+By default the viewer uses the default bootstrap theme. It is possible to configure the Wicket viewer to allow the user to <<_showing_a_theme_chooser, select other themes>> provided by http://bootswatch.com[bootswatch.com], and if required one of these can be <<_specifying_a_default_theme, set as the default>>.
+
+However, you may instead want to write your own custom theme, for example to fit your company's look-n-feel/interface guidelines. This is done by implementing https://github.com/l0rdn1kk0n/wicket-bootstrap[Wicket Bootstrap]’s `de.agilecoders.wicket.core.settings.ITheme` class. This defines:
+
+* the name of the theme
+* the resources it needs (the CSS and optional JS and/or fonts), and
+* optional urls to load them from a Content Delivery Network (CDN).
+
+To make use of the custom `ITheme` the application should register it by adding the following snippet in
+(your application's subclass of) `IsisWicketApplication`:
 
+[source,java]
+----
+public void init() {
+    ...
+    IBootstrapSettings settings = new BootstrapSettings();
+    ThemeProvider themeProvider = new SingleThemeProvider(new MyTheme());
+    settings.setThemeProvider(themeProvider);
+    Bootstrap.install(getClass(), settings);
+}
+----
 
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_how-tos_ui-hints_object-titles-and-icons.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_how-tos_ui-hints_object-titles-and-icons.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_how-tos_ui-hints_object-titles-and-icons.adoc
index 02b1c25..7b3260f 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_how-tos_ui-hints_object-titles-and-icons.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_how-tos_ui-hints_object-titles-and-icons.adoc
@@ -3,22 +3,92 @@
 :_basedir: ../
 :_imagesdir: images/
 
-IMPORTANT: TODO
+
+In Apache Isis every object is identified to the user by a <<_object_title, title>> (label) and an <<_object_icon, icon>>.  This is shown in several places: as the main heading for an object; as a link text for an object referencing another object, and also in tables representing collections of objects.
+
+The icon is often the same for all instances of a particular class, but it's also possible for an individual instance to return a custom icon.  This could represent the state of that object (eg a shipped order, say, or overdue library book).
+
+It is also possible for an object to return a <<_object_css_styling, CSS class>>.  In conjunction with <<_tweaking_css_classes, customized CSS>> this can be used to apply arbitrary styling; for example each object could be rendered in a page with a different background colour.
 
 
 == Object Title
 
-=== Titles in Tables
+The object title is a label to identify an object to the end-user.  Generally the object title is a label to identify an object to the end-user.  There is no requirement for it to be absolutely unique, but it should be "unique enough" to distinguish the object from other object's likely to be rendered on the same page.
+
+The title is always shown with an icon, so there is generally no need for the title to include information about the object's type.  For example the title of a customer object shouldn't include the literal string "Customer"; it can just have the customer's name, reference or some other meaningful business identifier.
+
+
+=== Declarative style
+
+The `@Title` annotation can be used build up the title of an object from its constituent parts.
+
+For example:
+
+[source,java]
+----
+public class Customer {
+    @Title(sequence="1", append=" ")
+    public String getFirstName() { ... }
+    @Title(sequence="2")
+    public Product getLastName() { ... }
+    ...
+}
+----
+
+might return "Arthur Clarke", while:
+
+[source,java]
+----
+public class CustomerAlt {
+    @Title(sequence="2", prepend=", ")
+    public String getFirstName() { ... }
+
+    @Title(sequence="1")
+    public Product getLastName() { ... }
+    ...
+}
+----
+
+could return "Clarke, Arthur".
+
+Note that the sequence is in Dewey Decimal Format.  This allows a subclass to intersperse information within the title.  For example (please forgive this horrible domain modelling (!)):
+
+
+[source,java]
+----
+public class Author extends Customer {
+    @Title(sequence="1.5", append=". ")
+    public String getMiddleInitial() { ... }
+    ...
+}
+----
+
+could return "Arthur C. Clarke".
+
+
+[TIP]
+====
+Titles can sometimes get be long and therefore rather cumbersome in "parented" tables.  If `@Title` has been used then the Wicket viewer will automatically exclude portions of the title belonging to the owning object.  See <<_titles_in_tables, here>> for further discussion.
+====
+
+
+=== Imperative style
+
+IMPORTANT: TODO
 
-=== Hide part of a title
 
 
 
 == Object Icon
 
+The icon is often the same for all instances of a particular class, but it's also possible for an individual instance to return a custom icon.  This could represent the state of that object (eg a shipped order, say, or overdue library book).
 
+IMPORTANT: TODO
 
 
 == Object CSS Styling
 
 
+It is also possible for an object to return a <<_object_css_styling, CSS class>>.  In conjunction with <<_tweaking_css_classes, customized CSS>> this can be used to apply arbitrary styling; for example each object could be rendered in a page with a different background colour.
+
+IMPORTANT: TODO

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_restfulobjects-viewer_configuration_properties.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_restfulobjects-viewer_configuration_properties.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_restfulobjects-viewer_configuration_properties.adoc
index e17bb56..546a4fa 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_restfulobjects-viewer_configuration_properties.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_restfulobjects-viewer_configuration_properties.adoc
@@ -27,37 +27,37 @@ Also, be aware enabling these settings makes the representations with respect to
 
 |`isis.viewer.restfulobjects.` +
 `honorUiHints`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 | See <<_honor_ui_hints, discussion>>, below.
 
 |`isis.viewer.restfulobjects.` +
 `suppressDescribedByLinks`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 .6+| See <<_suppressing_elements_of_the_representation, discussion>>, below.
 
 |`isis.viewer.restfulobjects.` +
 `suppressUpdateLink`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 
 |`isis.viewer.restfulobjects.` +
 `suppressMemberId`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 
 |`isis.viewer.restfulobjects.` +
 `suppressMemberLinks`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 
 |`isis.viewer.restfulobjects.` +
 `suppressMemberExtensions`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 
 |`isis.viewer.restfulobjects.` +
 `suppressMemberDisabledReason`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 
 |`isis.viewer.restfulobjects.` +
 `objectPropertyValuesOnly`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 | See <<_simplified_object_representation, discussion>>, below.
 
 |===

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_configuring-core.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_configuring-core.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_configuring-core.adoc
index a0a96e8..774404d 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_configuring-core.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_configuring-core.adoc
@@ -25,12 +25,12 @@ IMPORTANT: WIP...
 
 |`isis.services.` +
 `container.disableAutoFlush`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 |Whether the `DomainObjectContainer` should automatically flush pending changes prior to querying (via `allMatches()`, `firstMatch()` and so on).
 
 |`isis.persistor.` +
 `disableConcurrencyChecking`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 | Disables concurrency checking globally.  Only intended for "emergency use" as a workaround while pending fix/patch to Isis itself.  (Note that there is no "datanucleus" in the property).
 
 |`isis.reflector.facet.` +

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_properties.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_properties.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_properties.adoc
deleted file mode 100644
index 1a476c7..0000000
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_runtime-configuration_properties.adoc
+++ /dev/null
@@ -1,5 +0,0 @@
-= Configuration Properties
-:Notice: 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.
-:_basedir: ../
-:_imagesdir: images/
-

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_configuration_properties.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_configuration_properties.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_configuration_properties.adoc
index 836d335..420a0fc 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_configuration_properties.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_configuration_properties.adoc
@@ -4,7 +4,23 @@
 :_imagesdir: images/
 
 
-These configuration properties are typically stored in `WEB-INF/viewer_wicket.properties`.  However, you can place all configuration properties into `WEB-INF/isis.properties` if you wish (the configuration properties from all config files are merged together).
+Wicket configuration properties alter the way in which Isis' Wicket viewer renders domain objects.  They are typically stored in `WEB-INF/viewer_wicket.properties`.
+
+[NOTE]
+====
+To tell Isis that the Wicket viewer is in use (and should therefore search for the `viewer_wicket.properties` file), add the following to `WEB-INF/web.xml`:
+
+[source, xml]
+----
+<context-param>
+    <param-name>isis.viewers</param-name>
+    <param-value>wicket</param-value>
+</context-param>
+----
+
+====
+
+If you prefer you can place all configuration properties into `WEB-INF/isis.properties` (the configuration properties from all config files are merged together).
 
 
 .Wicket Viewer Configuration Properties
@@ -22,53 +38,96 @@ These configuration properties are typically stored in `WEB-INF/viewer_wicket.pr
 
 |`isis.viewer.wicket.` +
 `disableDependentChoiceAutoSelection`
-| `true`,`_false_`
+| `true`,`false` (`_false_`)
 | For dependent choices, whether to automatically select the first dependent (eg subcategory) when the parameter on which it depends (category) changes.
 
 |`isis.viewer.wicket.` +
 `disableModalDialogs`
-| `true`,`_false_`
+| `true`,`false` (`_false_`)
 | By default the Isis Wicket viewer uses a modal dialog for action parameters.  Before this feature was implemented (prior to 1.4.0), Isis rendered action parameters on its own page.  This property re-enables the old behaviour.
 
 Note that action pages are still used for bookmarked actions.
 
 |`isis.viewer.wicket.` +
+`maxTitleLengthInParentedTables`
+| +ve integer, (`_12_`)
+| See discussion <<_abbreviating_suppressing_titles_in_tables, below>>.
+
+|`isis.viewer.wicket.` +
+`maxTitleLengthInStandaloneTables`
+| +ve integer, (`_12_`)
+| See discussion <<_abbreviating_suppressing_titles_in_tables, below>>.
+
+|`isis.viewer.wicket.` +
+`maxTitleLengthInTables`
+| +ve integer, (`_12_`)
+| See discussion <<_abbreviating_suppressing_titles_in_tables, below>>.
+
+|`isis.viewer.wicket.` +
 `regularCase`
-| `true`,`_false_`
+| `true`,`false` (`_false_`)
 | Ignored for 1.8.0+; in earlier versions forced regular case rather than title case in the UI
 
 |`isis.viewer.wicket.` +
 `stripWicketTags`
-|`_true_`,`false`
+| `true`,`false` (`_true_`)
 | Whether to force Wicket tags to be stripped in prototype/development mode.  See discussion <<_stripped_wicket_tags, below>>.
 
 |`isis.viewer.wicket.` +
 `suppressPasswordReset`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 |If user registration is enabled, whether to suppress the "password reset" link on the login page.  See discussion <<_suppressing_password_reset, below>>.
 
 |`isis.viewer.wicket.` +
 `suppressRememberMe`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 |Whether to suppress "remember me" checkbox on the login page.
 
 |`isis.viewer.wicket.` +
 `suppressSignUp`
-|`true`,`_false_`
+| `true`,`false` (`_false_`)
 |If user registration is enabled, whether to suppress the "sign up" link on the login page.  See discussion <<_suppressing_sign_up, below>>.
 
-|`isis.viewer.wicket.` `themes.enabled`
+|`isis.viewer.wicket.` +
+`themes.enabled`
 | comma separated list ...
 | ... of bootswatch themes.  Only applies if `themes.showChooser`==`true`.  See discussion <<_showing_a_theme_chooser, below>>.
 
-|`isis.viewer.wicket.` `themes.showChooser`
-| `true`,`_false_`
+|`isis.viewer.wicket.` +
+`themes.showChooser`
+| `true`,`false` (`_false_`)
 | Whether to show chooser for Bootstrap themes.  See discussion <<_showing_a_theme_chooser, below>>
 
 |===
 
 
 
+== Abbreviating/suppressing titles in tables
+
+Objects whose title is overly long can be cumbersome in titles.  The Wicket viewer has a <<_titles_in_tables, mechanism to automatically shorten>> the titles of objects specified using `@Title`.  As an alternative/in addition, the viewer can also be configured to simply truncate titles longer than a certain length.
+
+The properties themselves are:
+
+[source,ini]
+----
+isis.viewer.wicket.maxTitleLengthInStandaloneTables=20
+isis.viewer.wicket.maxTitleLengthInParentedTables=8
+----
+
+If you wish to use the same value in both cases, you can also specify just:
+
+[source,ini]
+----
+isis.viewer.wicket.maxTitleLengthInTables=15
+----
+
+This is used as a fallback if the more specific properties are not provided.
+
+If no properties are provided, then the Wicket viewer defaults to abbreviating titles to a length of `12`.
+
+
+
+
 == Suppressing 'remember me'
 
 The 'remember me' checkbox on the login page can be suppressed, if required, by setting a configuration flag.
@@ -77,11 +136,11 @@ The 'remember me' checkbox on the login page can be suppressed, if required, by
 
 With 'remember me' not suppressed (the default):
 
-image::{_imagesdir}wicket-viewer/remember-me/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/remember-me/login-page-default.png"]
+image::{_imagesdir}wicket-viewer/suppress-remember-me/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-remember-me/login-page-default.png"]
 
 and with the checkbox suppressed:
 
-image::{_imagesdir}wicket-viewer/remember-me/login-page-suppress-remember-me.png[width="300px",link="{_imagesdir}wicket-viewer/remember-me/login-page-suppress-remember-me.png"]
+image::{_imagesdir}wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png"]
 
 === Configuration
 
@@ -104,11 +163,11 @@ The 'sign up' link can be suppressed, if required, by setting a configuration fl
 
 With 'sign up' not suppressed (the default):
 
-image::{_imagesdir}wicket-viewer/sign-up/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/sign-up/login-page-default.png"]
+image::{_imagesdir}wicket-viewer/suppress-sign-up/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-sign-up/login-page-default.png"]
 
 and with the link suppressed:
 
-image::{_imagesdir}wicket-viewer/sign-up/login-page-suppress-sign-up.png[width="300px",link="{_imagesdir}wicket-viewer/sign-up/login-page-suppress-sign-up.png"]
+image::{_imagesdir}wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png"]
 
 
 === Configuration
@@ -136,11 +195,11 @@ The 'password reset' link can be suppressed, if required, by setting a configura
 
 With 'password reset' not suppressed (the default):
 
-image::{_imagesdir}wicket-viewer/password-reset/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/password-reset/login-page-default.png"]
+image::{_imagesdir}wicket-viewer/suppress-password-reset/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-password-reset/login-page-default.png"]
 
 and with the link suppressed:
 
-image::{_imagesdir}wicket-viewer/password-reset/login-page-suppress-password-reset.png[width="300px",link="{_imagesdir}wicket-viewer/password-reset/login-page-suppress-password-reset.png"]
+image::{_imagesdir}wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png[width="300px",link="{_imagesdir}wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png"]
 
 === Configuration
 

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_features.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_features.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_features.adoc
index 301b296..ca7c501 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_features.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_user-guide_wicket-viewer_features.adoc
@@ -6,6 +6,82 @@
 
 This section discusses features of the wicket viewer from the perspective of an end-user actually using your Isis application.
 
+
+
+== Titles in Tables
+
+Object titles can often be quite long if the intention is to uniquely identify the object.  While this is appropriate for the object view, it can be cumbersome within tables.
+
+If an object's title is specified with from `@Title` annotation then the Wicket viewer will (for parented collections) automatically "contextualize" a title by excluding the part of the title corresponding to a reference to the owning (parent) object.
+
+In other words, suppose we have:
+
+image::{_imagesdir}how-tos/ui-hints/object-titles-and-icons/cust-order-product.png[width="579px",link="{_imagesdir}how-tos/ui-hints/object-titles-and-icons/cust-order-product.png"]
+
+so that `Customer` has a collection of `Order`s:
+
+[source,java]
+----
+public class Customer {
+    public Set<Order> getOrders() { ... }
+    ...
+}
+----
+
+and `Product` also has a collection of `Order`s (please forgive the suspect domain modelling in this example (!)):
+
+[source,java]
+----
+public class Product {
+    public Set<Order> getOrders() { ... }
+    ...
+}
+----
+
+and where the `Order` class references both `Customer` and `Product`.
+
+The `Order`'s might involve each of these:
+
+[source,java]
+----
+public class Order {
+    @Title(sequence="1")
+    public Customer getCustomer() { ... }
+    @Title(sequence="2")
+    public Product getProduct() { ... }
+    @Title(sequence="3")
+    public String getOtherInfo() { ... }
+    ...
+}
+----
+
+In this case, if we view a `Customer` with its collection of `Order`s, then in that parented collection's table the customer's property will be automatically excluded from the title of the `Order` (but it would show the product).  Conversely, if a `Product` is viewed then its collection of `Order`s would suppress product (but would show the customer).
+
+[TIP]
+====
+This feature is a close cousin of the `@PropertyLayout(hidden=Where.REFERENCES_PARENT)` annotation, which will cause the property itself to be hidden as a column in the table. An Isis idiom is therefore:
+
+[source,java]
+----
+public class Order {
+    @Title(sequence="1")
+    @PropertyLayout(hidden=Where.REFERENCES_PARENT)
+    public Customer getCustomer() { ... }
+    ...
+}
+----
+
+====
+
+The above annotations mean that titles usually "just work", altering according to the context in which they are viewed.
+
+[TIP]
+====
+It is also possible to configure the Wicket viewer to <<_abbreviating_suppressing_titles_in_tables, abbreviate titles or suppress them>> completely.
+====
+
+
+
 == File upload/download
 
 The Isis application library provides the <<_blob, Blob>> value type (binary large objects) and also the <<_clob, Clob>>
@@ -311,8 +387,71 @@ Alternatively, `alt+]` will also open the dialog.  It can be closed with either
 
 == User Registration
 
-IMPORTANT: TODO
+The Wicket viewer provides the ability for users to sign-up by providing a valid email address:
+
+* from the login page the user can instead follow a link to take them to a sign-up page, where they enter their email address.
+* a verification email is sent using this service; the email includes a link back to the running application.
+* the user then completes the registration process by choosing a user name and password.
+* the Wicket viewer then creates an account for them and logs them in.
+
+In a similar way, if the user has forgotten their password then they can request a reset link to be sent to their email, again by providing their email address.
+
+To support this the framework requires three services to be registered and configured:
+
+* the <<_user_registration_service, user registration service>>, which provides an API to create the user account
+* the <<_email_notification_service, email notification service>>, which provides an API for to send the verification emails
+* the <<_email_service, email service>>, that is used by the email notification service to actually send the email.
+
+The Isis core framework provides a default implementation of both the email notification service and the email service. If your application uses the https://github.com/isisaddons/isis-module-security[Isis addons security module] (not ASF) then an implementation is provided by that module; just add to the classpath. Otherwise you will need to provide your own implementation.
+
+[NOTE]
+====
+There is _no_ default implementation of the user registration service in the core framework.
+====
+
+=== Screenshots
+
+The user is presented with a login page:
+
+image::{_imagesdir}wicket-viewer/user-registration/login-page-default.png[width="300px",link="{_imagesdir}wicket-viewer/user-registration/login-page-default.png"]
+
+
+Navigate to the sign up page. Complete the page, and verify:
+
+image::{_imagesdir}wicket-viewer/user-registration/sign-up-page.png[width="300px",link="{_imagesdir}wicket-viewer/user-registration/sign-up-page.png"]
+
+
+Back to the login page:
+
+image::{_imagesdir}wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png[width="300px",link="{_imagesdir}wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png"]
+
+
+Email arrives, with link:
+
+image::{_imagesdir}wicket-viewer/user-registration/sign-up-email-with-verification-link.png[width="500px",link="{_imagesdir}wicket-viewer/user-registration/sign-up-email-with-verification-link.png"]
+
+
+Follow the link, complete the page:
+
+image::{_imagesdir}wicket-viewer/user-registration/sign-up-registration-page.png[width="300px",link="{_imagesdir}wicket-viewer/user-registration/sign-up-registration-page.png"]
+
+
+Automatically logged in:
+
+image::{_imagesdir}wicket-viewer/user-registration/sign-up-after-registration.png[width="800px",link="{_imagesdir}wicket-viewer/user-registration/sign-up-after-registration.png"]
+
+
+=== Configuration
+
+There are two prerequisites:
+
+* register an implementation of the <<_user_registration_service, user registration service>> (eg by using the https://github.com/isisaddons/isis-module-security[Isis addons security module])
+
+* configure the <<_email_service, email service>>
+
+The latter is required if you are using the default email notification service and email service. If you are using your own alternative implementation of the email notification service then it may be omitted (and configure your own alternative implementation as required).
 
+It is also possible to configure the Wicket viewer to suppress <<_suppressing_sign_up, the sign-up page link>> and/or the <<_suppressing_password_reset, password reset page>>.
 
 
 

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/how-tos/ui-hints/object-titles-and-icons/cust-order-product.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/how-tos/ui-hints/object-titles-and-icons/cust-order-product.png b/adocs/documentation/src/main/asciidoc/user-guide/images/how-tos/ui-hints/object-titles-and-icons/cust-order-product.png
new file mode 100644
index 0000000..3cec4bd
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/how-tos/ui-hints/object-titles-and-icons/cust-order-product.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-default.png
deleted file mode 100644
index fdf2dee..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-default.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-suppress-password-reset.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-suppress-password-reset.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-suppress-password-reset.png
deleted file mode 100644
index b557269..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/password-reset/login-page-suppress-password-reset.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-default.png
deleted file mode 100644
index fdf2dee..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-default.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-suppress-remember-me.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-suppress-remember-me.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-suppress-remember-me.png
deleted file mode 100644
index fe69496..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/remember-me/login-page-suppress-remember-me.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-default.png
deleted file mode 100644
index fdf2dee..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-default.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-suppress-sign-up.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-suppress-sign-up.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-suppress-sign-up.png
deleted file mode 100644
index 8ff8bc3..0000000
Binary files a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/sign-up/login-page-suppress-sign-up.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-default.png
new file mode 100644
index 0000000..fdf2dee
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-default.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png
new file mode 100644
index 0000000..b557269
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-password-reset/login-page-suppress-password-reset.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-default.png
new file mode 100644
index 0000000..fdf2dee
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-default.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png
new file mode 100644
index 0000000..fe69496
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-remember-me/login-page-suppress-remember-me.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-default.png
new file mode 100644
index 0000000..fdf2dee
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-default.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png
new file mode 100644
index 0000000..8ff8bc3
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/suppress-sign-up/login-page-suppress-sign-up.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/login-page-default.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/login-page-default.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/login-page-default.png
new file mode 100644
index 0000000..fdf2dee
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/login-page-default.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-after-registration.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-after-registration.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-after-registration.png
new file mode 100644
index 0000000..59902f9
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-after-registration.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-email-with-verification-link.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-email-with-verification-link.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-email-with-verification-link.png
new file mode 100644
index 0000000..021b642
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-email-with-verification-link.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png
new file mode 100644
index 0000000..3402bf6
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-login-page-after-sign-up.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-page.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-page.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-page.png
new file mode 100644
index 0000000..8e3bdaa
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-page.png differ

http://git-wip-us.apache.org/repos/asf/isis/blob/5d5f1065/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-registration-page.png
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-registration-page.png b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-registration-page.png
new file mode 100644
index 0000000..189965a
Binary files /dev/null and b/adocs/documentation/src/main/asciidoc/user-guide/images/wicket-viewer/user-registration/sign-up-registration-page.png differ