diff --git a/docs/getting-started-tutorial/1-view-first-development.adoc b/docs/getting-started-tutorial/1-view-first-development.adoc index 6b844d0001..e60bdf9887 100644 --- a/docs/getting-started-tutorial/1-view-first-development.adoc +++ b/docs/getting-started-tutorial/1-view-first-development.adoc @@ -68,4 +68,4 @@ smart enough to strip all HTML comments in production mode.]. When it comes to user testing, notice that our view is fully-valid HTML, with placeholder data. It is, in effect, a high-fidelity mockup. And now that we've got our view sorted out (and, ideally, tested with users), we can start hooking -up the Lift side. +up link:2-the-lift-menu-system.adoc[the Lift side]. diff --git a/docs/getting-started-tutorial/2-the-lift-menu-system.adoc b/docs/getting-started-tutorial/2-the-lift-menu-system.adoc index 5e533e4673..cddf382db2 100644 --- a/docs/getting-started-tutorial/2-the-lift-menu-system.adoc +++ b/docs/getting-started-tutorial/2-the-lift-menu-system.adoc @@ -30,4 +30,4 @@ internationalization set up for now it'll just go through unchanged. The part after the `/` specifies where the template will be found—in our case, in the `chat.html` file directly under `src/main/webapp`. -With that out of the way, we can move on to bringing our HTML to life. +With that out of the way, we can move on to link:3-adding-snippet-bindings.adoc[bringing our HTML to life]. diff --git a/docs/getting-started-tutorial/3-adding-snippet-bindings.adoc b/docs/getting-started-tutorial/3-adding-snippet-bindings.adoc index 25e30e638b..96e004dbb1 100644 --- a/docs/getting-started-tutorial/3-adding-snippet-bindings.adoc +++ b/docs/getting-started-tutorial/3-adding-snippet-bindings.adoc @@ -70,4 +70,4 @@ Now that we have our snippet methods set up, we can move on to actually showing some data in them. Right now all they do is pass their contents through unchanged, so rendering this page in Lift will look just the same as if we just opened the template directly. To transform them and display our data easily, we -use CSS Selector Transforms. +use link:4-css-selector-transforms.adoc[CSS Selector Transforms]. diff --git a/docs/getting-started-tutorial/4-css-selector-transforms.adoc b/docs/getting-started-tutorial/4-css-selector-transforms.adoc index a4286667b1..01f8e8cbee 100644 --- a/docs/getting-started-tutorial/4-css-selector-transforms.adoc +++ b/docs/getting-started-tutorial/4-css-selector-transforms.adoc @@ -168,4 +168,4 @@ happening: one entry per message, and every time we reload the page we get a new entry. Now that we've got the list of messages rendering, it's time to get into the -bread and butter of web development: forms. +bread and butter of web development: link:5-basic-forms.adoc[forms]. diff --git a/docs/getting-started-tutorial/5-basic-forms.adoc b/docs/getting-started-tutorial/5-basic-forms.adoc index 9159dad38e..a2b10c8304 100644 --- a/docs/getting-started-tutorial/5-basic-forms.adoc +++ b/docs/getting-started-tutorial/5-basic-forms.adoc @@ -103,4 +103,4 @@ works fine when there's just one user posting a time, but once multiple users start submitting the post form simultaneously, we start getting into serious threading and data consistency issues. -Let's deal with usernames first. +Let's link:6-adding-usernames.adoc[deal with usernames first]. diff --git a/docs/getting-started-tutorial/6-adding-usernames.adoc b/docs/getting-started-tutorial/6-adding-usernames.adoc index 53124e8561..7fdbe07f4e 100644 --- a/docs/getting-started-tutorial/6-adding-usernames.adoc +++ b/docs/getting-started-tutorial/6-adding-usernames.adoc @@ -142,5 +142,5 @@ message at the same time right now, who knows what would happen to the both, or with an undefined state of nastiness. Before letting a user set their own username, let's deal with this issue by -serializing the posting of and access to messages using a simple mechanism: an -actor. +serializing the posting of and access to messages using a simple mechanism: +link:7-using-actors-for-chat.adoc[an actor]. diff --git a/docs/getting-started-tutorial/7-using-actors-for-chat.adoc b/docs/getting-started-tutorial/7-using-actors-for-chat.adoc index 5a56d6066a..5ca26ff7e5 100644 --- a/docs/getting-started-tutorial/7-using-actors-for-chat.adoc +++ b/docs/getting-started-tutorial/7-using-actors-for-chat.adoc @@ -155,5 +155,5 @@ wait until the actor gets to our message and then replies to it. There are far better ways of dealing with both of these issues, which we'll talk about when we talk about using `CometActor`s link:9-comet-actors[later]. -First, though, let's go back and look at how we can let the user change their -username so they don't have to use our nasty automatically-generated name. +First, though, let's go back and look at how we can let the user link:8-customizable-usernames.adoc[change their +username so they don't have to use our nasty automatically-generated name]. diff --git a/docs/getting-started-tutorial/8-customizable-usernames.adoc b/docs/getting-started-tutorial/8-customizable-usernames.adoc index 3c6219b189..c426f1294e 100644 --- a/docs/getting-started-tutorial/8-customizable-usernames.adoc +++ b/docs/getting-started-tutorial/8-customizable-usernames.adoc @@ -66,4 +66,4 @@ time. Until now, to see the messages someone else has posted, we'd have to reload the page. Only our messages were posted to the page in real time. Not much of a chat at all, is it! -It's time to break out the `CometActor`. +It's time to link:9-comet-actors.adoc[break out the `CometActor`].