Updates based on suggestion from David Kurtz.
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Manual / Tutorial.pod
index d69d300..58a6873 100644 (file)
@@ -2,64 +2,65 @@
 
 Catalyst::Manual::Tutorial - Catalyst Tutorial: Overview
 
-
-
 =head1 DESCRIPTION
 
-The Catalyst framework is a flexible and comprehensive environment for quickly building high-functionality web applications.  This tutorial is design to provide a rapid introduction to its basics and most commonly used features while focusing on real-world best practices.
+The Catalyst framework is a flexible and comprehensive environment for
+quickly building high-functionality web applications.  This tutorial is
+designed to provide a rapid introduction to its basics and its most
+commonly used features while focusing on real-world best practices.
 
-The tutorial is broken down into the following sections:
+The tutorial is divided into the following sections:
+
+B<NOTE:> CLICK THESE LINKS TO JUMP TO CHAPTERS (the index links above
+only navigate inside this page).
 
 =over 4
 
 =item *
 
-L<Introduction|Catalyst::Manual::Tutorial01_Intro>
+L<Introduction|Catalyst::Manual::Tutorial::Intro>
 
 =item * 
 
-L<Catalyst Basics|Catalyst::Manual::Tutorial02_CatalystBasics>
+L<Catalyst Basics|Catalyst::Manual::Tutorial::CatalystBasics>
 
 =item * 
 
-L<CRUD|Catalyst::Manual::Tutorial03_BasicCRUD>
+L<Basic CRUD|Catalyst::Manual::Tutorial::BasicCRUD>
 
 =item * 
 
-L<Authentication|Catalyst::Manual::Tutorial04_Authentication>
+L<Authentication|Catalyst::Manual::Tutorial::Authentication>
 
 =item * 
 
-L<Authorization|Catalyst::Manual::Tutorial05_Authorization>
+L<Authorization|Catalyst::Manual::Tutorial::Authorization>
 
 =item * 
 
-L<Debugging|Catalyst::Manual::Tutorial06_Debugging>
+L<Debugging|Catalyst::Manual::Tutorial::Debugging>
 
-=item * 
+=item *
 
-L<Testing|Catalyst::Manual::Tutorial07_Testing>
+L<Testing|Catalyst::Manual::Tutorial::Testing>
 
 =item * 
 
-L<CRUD|Catalyst::Manual::Tutorial08_AdvancedCRUD>
+L<Advanced CRUD|Catalyst::Manual::Tutorial::AdvancedCRUD>
 
 =item * 
 
-L<Appendicies|Catalyst::Manual::Tutorial09_Appendicies>
+L<Appendices|Catalyst::Manual::Tutorial::Appendices>
 
 =back
 
-
-Full source code is available for each section via the main Catalyst Subversion repository at L<http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/>.  See the end of each section for the specifics on retrieving code for that section.
-
-A tarball of the final application is available at C<to_be_compled_in_final_version>.
-
+A tarball of the final application is available at
+L<http://dev.catalyst.perl.org/repos/Catalyst/trunk/examples/Tutorial/Final_Tarball/MyApp.tgz>.
 
 
-=head1 Detailed Table Of Contents
+=head1 Detailed Table of Contents
 
-=head2 Part 1: Introduction
+=head2 L<Part 1: Introduction|Catalyst::Manual::Tutorial::Intro>
 
 =over 4
 
@@ -82,8 +83,7 @@ WHERE TO GET WORKING CODE
 =back
 
 
-
-=head2 Part 2: Catalyst Application Development Basics
+=head2 L<Part 2: Catalyst Basics|Catalyst::Manual::Tutorial::CatalystBasics>
 
 =over 4
 
@@ -103,6 +103,7 @@ EDIT THE LIST OF CATALYST PLUGINS
 
 DATABASE ACCESS WITH DBIx::Class
 
+
 =over 4
 
 =item *
@@ -115,10 +116,11 @@ Create the DBIC ``Result Source'' Files
 
 =item *
 
-Use Catalyst::Model::DBIC::Schema To Load The Model Class
+Use Catalyst::Model::DBIC::Schema to Load the Model Class
 
 =back
 
+
 =item *
 
 CREATE A CATALYST CONTROLLER
@@ -127,11 +129,16 @@ CREATE A CATALYST CONTROLLER
 
 CATALYST VIEWS
 
+
 =over 4
 
 =item *
 
-Create a Catalyst View Using TTSITE
+Create a Catalyst View Using TTSite
+
+=item *
+
+Using RenderView for the Default View
 
 =item *
 
@@ -143,15 +150,14 @@ Create a TT Template Page
 
 =back
 
+
 =item *
 
 RUN THE APPLICATION
 
 =back
 
-
-
-=head2 Part 3: Basic CRUD
+=head2 L<Part 3: Basic CRUD|Catalyst::Manual::Tutorial::BasicCRUD>
 
 =over 4
 
@@ -183,7 +189,7 @@ MANUALLY BUILDING A CREATE FORM
 
 =item *
 
-Add Method to Display The Form
+Add a Method to Display the Form
 
 =item *
 
@@ -195,7 +201,7 @@ Add Method to Process Form Values and Update Database
 
 =item *
 
-Test Out The Form
+Test Out the Form
 
 =back
 
@@ -221,9 +227,7 @@ Try the Delete Feature
 
 =back
 
-
-
-=head2 Part 4: Authentication
+=head2 L<Part 4: Authentication|Catalyst::Manual::Tutorial::Authentication>
 
 =over 4
 
@@ -239,7 +243,7 @@ Add Users and Roles to the Database
 
 =item *
 
-Add User and Role Information to Dbic Schema
+Add User and Role Information to DBIC Schema
 
 =item *
 
@@ -305,9 +309,7 @@ Try Out the Hashed Passwords
 
 =back
 
-
-
-=head2 Part 5: Authorization
+=head2 L<Part 5: Authorization|Catalyst::Manual::Tutorial::Authorization>
 
 =over 4
 
@@ -319,7 +321,7 @@ BASIC AUTHORIZATION
 
 =item *
 
-Update Plugins to Include Support Authorization
+Update Plugins to Include Support for Authorization
 
 =item *
 
@@ -361,8 +363,7 @@ Add a Method to Handle Access Violations
 
 =back
 
-
-=head2 Part 6: Debugging
+=head2 L<Part 6: Debugging|Catalyst::Manual::Tutorial::Debugging>
 
 =over 4
 
@@ -374,11 +375,13 @@ LOG STATEMENTS
 
 RUNNING CATALYST UNDER THE PERL DEBUGGER
 
-=back
+=item *
 
+DEBUGGING MODULES FROM CPAN
 
+=back
 
-=head2 Part 7: Testing
+=head2 L<Part 7: Testing|Catalyst::Manual::Tutorial::Testing>
 
 =over 4
 
@@ -400,9 +403,7 @@ SUPPORTING BOTH PRODUCTION AND TEST DATABASES
 
 =back
 
-
-
-=head2 Part 8: Advanced CRUD
+=head2 L<Part 8: Advanced CRUD|Catalyst::Manual::Tutorial::AdvancedCRUD>
 
 =over 4
 
@@ -480,9 +481,7 @@ Use populate_from_widget in hw_create_do
 
 =back
 
-
-
-=head2 Part 9: Appendices
+=head2 L<Part 9: Appendices|Catalyst::Manual::Tutorial::Appendices>
 
 =over 4
 
@@ -518,5 +517,67 @@ PostgreSQL
 
 =back
 
+=item *
+
+APPENDIX 3: IMPROVED HASHING SCRIPT
+
+=back
+
+
+=head1 THANKS
+
+This tutorial would not have been possible without the input of many 
+different people in the Catalyst community.  In particular, the 
+primary author would like to thank:
+
+=over 4
+
+=item *
+
+Sebastian Riedel for founding the Catalyst project.
+
+=item *
+
+The members of the Catalyst Core Team for their tireless efforts to
+advance the Catalyst project.  Although all of the Core Team members
+have played a key role in this tutorial, it would have never been
+possible without the critical contributions of: Matt Trout, for his
+unfathomable knowledge of all things Perl and Catalyst (and his
+willingness to answer lots of my questions); Jesse Sheidlower, for his
+incredible skill with the written word and dedication to improving the
+Catalyst documentation; and Yuval Kogman, for his work on the Catalyst
+"Auth & Authz" plugins (the original focus of the tutorial) and other
+key Catalyst modules.
+
+=item *
+
+Other Catalyst documentation folks like Kieren Diment, Gavin Henry,
+and Jess Robinson (including their work on the original Catalyst
+tutorial).
+
+=item *
+
+Everyone on #catalyst and #catalyst-dev.
+
+=item *
+
+People who have emailed me with corrections and suggestions on the 
+tutorial.  As of the most recent release, this include: Florian Ragwitz, 
+Mauro Andreolini, Jim Howard, Giovanni Gigante, William Moreno,  
+Bryan Roach, Ashley Berlin, David Kamholz, Kevin Old, Henning Sprang,
+Jeremy Jones, and David Kurtz.
+
 =back
 
+
+
+=head1 AUTHOR
+
+Kennedy Clark, C<hkclark@gmail.com>
+
+Please report any errors, issues or suggestions to the author.  The
+most recent version of the Catalyst Tutorial can be found at
+L<http://dev.catalyst.perl.org/repos/Catalyst/trunk/Catalyst-Runtime/lib/Catalyst/Manual/Tutorial/>.
+
+Copyright 2006, Kennedy Clark, under Creative Commons License
+(L<http://creativecommons.org/licenses/by-nc-sa/2.5/>).