Convert tabs to spaces
[catagits/Catalyst-Manual.git] / lib / Catalyst / Manual / Tutorial / 06_Authorization.pod
index d26a228..78cb116 100644 (file)
@@ -80,28 +80,24 @@ Edit C<lib/MyApp.pm> and add C<Authorization::Roles> to the list:
 
     # Load plugins
     use Catalyst qw/
-                    -Debug
-                    ConfigLoader
-                    Static::Simple
-                
-                    StackTrace
-                
-                    Authentication
-                    Authorization::Roles
+        -Debug
+        ConfigLoader
+        Static::Simple
         
-                    Session
-                    Session::Store::FastMmap
-                    Session::State::Cookie
-                    /;
+        StackTrace
+        
+        Authentication
+        Authorization::Roles
+        
+        Session
+        Session::Store::FastMmap
+        Session::State::Cookie
+    /;
 
-Once again (remain sharp, by now you should be getting the hang of things)
-include this additional plugin as a new dependency in the Makefile.PL file
-like this:
+Once again, include this additional plugin as a new dependency in 
+the Makefile.PL file like this:
 
-    requires (
-        ...
-        'Catalyst::Plugin::Authorization::Roles' => '0',
-    );
+    requires 'Catalyst::Plugin::Authorization::Roles';
 
 
 =head2 Add Role-Specific Logic to the "Book List" Template
@@ -176,11 +172,9 @@ updating C<url_create> to match the following code:
             # Note: Above is a shortcut for this:
             # $book->create_related('book_authors', {author_id => $author_id});
     
-            # Assign the Book object to the stash for display in the view
-            $c->stash->{book} = $book;
-    
-            # Set the TT template to use
-            $c->stash->{template} = 'books/create_done.tt2';
+            # Assign the Book object to the stash and set template
+            $c->stash(book     => $book,
+                      template => 'books/create_done.tt2');
         } else {
             # Provide very simple feedback to the user.
             $c->response->body('Unauthorized!');
@@ -206,10 +200,9 @@ C<sub add : Local {> and C<=end> after the closing C<}>.
 
 =head2 Try Out Authentication And Authorization
 
-Press C<Ctrl-C> to kill the previous server instance (if it's still
-running) and restart it:
+Make sure the development server is running:
 
-    $ script/myapp_server.pl
+    $ script/myapp_server.pl -r
 
 Now trying going to L<http://localhost:3000/books/list> and you should 
 be taken to the login page (you might have to C<Shift+Reload> or 
@@ -262,7 +255,7 @@ this method to our Result Class.  Open
 C<lib/MyApp/Schema/Result/User.pm> and add the following method below 
 the "C<DO NOT MODIFY ...>" line:
 
-    =head 2 has_role
+    =head2 has_role
     
     Check if a user has the specified role
     
@@ -318,7 +311,7 @@ C<lib/MyApp/Controller/Root.pm> and add this method:
     sub error_noperms :Chained('/') :PathPart('error_noperms') :Args(0) {
         my ($self, $c) = @_;
     
-        $c->stash->{template} = 'error_noperms.tt2';
+        $c->stash(template => 'error_noperms.tt2');
     }
 
 And also add the template file by putting the following text into
@@ -326,10 +319,6 @@ C<root/src/error_noperms.tt2>:
 
     <span class="error">Permission Denied</span>
 
-Then run the Catalyst development server script:
-
-    $ script/myapp_server.pl
-
 Log in as C<test01> and create several new books using the C<url_create>
 feature: