<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>lib/Mango/Catalyst/Checkout/Plugins/Edit.pm</filename>
    </added>
    <added>
      <filename>share/forms/checkout/edit.yml</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -2,6 +2,8 @@
 &lt;!DOCTYPE plist PUBLIC &quot;-//Apple Computer//DTD PLIST 1.0//EN&quot; &quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&quot;&gt;
 &lt;plist version=&quot;1.0&quot;&gt;
 &lt;dict&gt;
+	&lt;key&gt;currentDocument&lt;/key&gt;
+	&lt;string&gt;lib/Mango/Catalyst/Controller/Checkout.pm&lt;/string&gt;
 	&lt;key&gt;documents&lt;/key&gt;
 	&lt;array&gt;
 		&lt;dict&gt;
@@ -19,6 +21,92 @@
 	&lt;integer&gt;311&lt;/integer&gt;
 	&lt;key&gt;metaData&lt;/key&gt;
 	&lt;dict&gt;
+		&lt;key&gt;lib/Mango/Catalyst/Checkout/Plugins/Edit.pm&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;8&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;19&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+		&lt;/dict&gt;
+		&lt;key&gt;lib/Mango/Catalyst/Checkout/Plugins/Initialize.pm&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;32&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;13&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;columnSelection&lt;/key&gt;
+			&lt;false/&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;selectFrom&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;23&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;13&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;selectTo&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;48&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;13&lt;/integer&gt;
+			&lt;/dict&gt;
+		&lt;/dict&gt;
+		&lt;key&gt;lib/Mango/Catalyst/Controller/Checkout.pm&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;55&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;47&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;21&lt;/integer&gt;
+		&lt;/dict&gt;
+		&lt;key&gt;lib/Mango/Checkout.pm&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;12&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+		&lt;/dict&gt;
+		&lt;key&gt;share/forms/checkout/edit.yml&lt;/key&gt;
+		&lt;dict&gt;
+			&lt;key&gt;caret&lt;/key&gt;
+			&lt;dict&gt;
+				&lt;key&gt;column&lt;/key&gt;
+				&lt;integer&gt;0&lt;/integer&gt;
+				&lt;key&gt;line&lt;/key&gt;
+				&lt;integer&gt;29&lt;/integer&gt;
+			&lt;/dict&gt;
+			&lt;key&gt;firstVisibleColumn&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+			&lt;key&gt;firstVisibleLine&lt;/key&gt;
+			&lt;integer&gt;0&lt;/integer&gt;
+		&lt;/dict&gt;
 		&lt;key&gt;t/pod_syntax.t&lt;/key&gt;
 		&lt;dict&gt;
 			&lt;key&gt;caret&lt;/key&gt;
@@ -34,9 +122,17 @@
 			&lt;integer&gt;0&lt;/integer&gt;
 		&lt;/dict&gt;
 	&lt;/dict&gt;
+	&lt;key&gt;openDocuments&lt;/key&gt;
+	&lt;array&gt;
+		&lt;string&gt;lib/Mango/Catalyst/Controller/Checkout.pm&lt;/string&gt;
+		&lt;string&gt;lib/Mango/Checkout.pm&lt;/string&gt;
+		&lt;string&gt;share/forms/checkout/edit.yml&lt;/string&gt;
+		&lt;string&gt;lib/Mango/Catalyst/Checkout/Plugins/Initialize.pm&lt;/string&gt;
+		&lt;string&gt;lib/Mango/Catalyst/Checkout/Plugins/Edit.pm&lt;/string&gt;
+	&lt;/array&gt;
 	&lt;key&gt;showFileHierarchyDrawer&lt;/key&gt;
 	&lt;true/&gt;
 	&lt;key&gt;windowFrame&lt;/key&gt;
-	&lt;string&gt;{{931, 28}, {979, 1143}}&lt;/string&gt;
+	&lt;string&gt;{{336, 235}, {1228, 940}}&lt;/string&gt;
 &lt;/dict&gt;
 &lt;/plist&gt;</diff>
      <filename>Mango.tmproj</filename>
    </modified>
    <modified>
      <diff>@@ -317,6 +317,9 @@ sub mk_controllers {
         file( $c, 'Admin', 'Products', 'Attributes.pm' )
     );
 
+    ## checkout
+    $self-&gt;render_file( 'controller_checkout',  file( $c, 'Checkout.pm' ) );
+
     ## current user
     $self-&gt;mk_dir( dir( $c, 'Cart' ) );
     $self-&gt;mk_dir( dir( $c, 'Wishlists' ) );
@@ -505,6 +508,16 @@ BEGIN {
 };
 
 1;
+__controller_checkout__
+package [% name %]::Controller::Checkout;
+use strict;
+use warnings;
+
+BEGIN {
+    use base qw/Mango::Catalyst::Controller::Checkout/;
+};
+
+1;
 __controller_cart__
 package [% name %]::Controller::Cart;
 use strict;</diff>
      <filename>lib/Catalyst/Helper/Mango.pm</filename>
    </modified>
    <modified>
      <diff>@@ -11,7 +11,7 @@ BEGIN {
 sub register {
     my ( $self, $ctx ) = @_;
 
-    $ctx-&gt;add_handler( CHECKOUT_PHASE_INITIALIZE, \&amp;initialize, 100 );
+    $ctx-&gt;add_handler( 'INITIALIZE', \&amp;initialize, 100 );
 
     return;
 }
@@ -22,6 +22,9 @@ sub initialize {
     my $c       = $ctx-&gt;stash-&gt;{'c'};
     my $profile = $c-&gt;user-&gt;profile;
 
+    use Carp ();
+    Carp::carp 'INIT FROM MANGO CAT PLUGIN';
+
     ## this sohuld really be in core
     $order-&gt;billtofirstname( $profile-&gt;first_name );
     $order-&gt;billtolastname( $profile-&gt;last_name );</diff>
      <filename>lib/Mango/Catalyst/Checkout/Plugins/Initialize.pm</filename>
    </modified>
    <modified>
      <diff>@@ -11,14 +11,6 @@ BEGIN {
     extends 'Class::Workflow::State::Simple';
 }
 
-sub BUILD {
-    my ( $self, $hash ) = @_;
-
-    $self-&gt;checkout($hash);
-
-    return;
-}
-
 subtype 'Checkout' =&gt; as 'Object' =&gt; where { $_-&gt;isa('Mango::Checkout') };
 
 coerce 'Checkout' =&gt; from 'HashRef' =&gt; via { Mango::Checkout-&gt;new($_) };</diff>
      <filename>lib/Mango/Catalyst/Checkout/Workflow/State.pm</filename>
    </modified>
    <modified>
      <diff>@@ -68,7 +68,7 @@ __END__
 
 =head1 NAME
 
-Mango::Catalyst::Controller::Carts::Items - Catalyst controller for cart item information
+Mango::Catalyst::Controller::Cart::Items - Catalyst controller for cart item information
 
 =head1 SYNOPSIS
 </diff>
      <filename>lib/Mango/Catalyst/Controller/Cart/Items.pm</filename>
    </modified>
    <modified>
      <diff>@@ -24,13 +24,17 @@ BEGIN {
             states        =&gt; [
                 {
                     name        =&gt; 'preview_GET',
-                    phases      =&gt; [qw/CHECKOUT_PHASE_PREVIEW/],
-                    loadplugins =&gt; [qw/Plugin::GetShippingOptions/],
+                    checkout    =&gt; {
+                        phases      =&gt; [qw/PREVIEW/],
+                        loadplugins =&gt; [qw/Plugin::GetShippingOptions/]
+                    }
                 },
                 {
                     name        =&gt; 'preview_POST',
-                    phases      =&gt; [qw/CHECKOUT_PHASE_PREVIEW/],
-                    loadplugins =&gt; [qw/Plugin::ApplyShipping/],
+                    checkout    =&gt; {
+                        phases      =&gt; [qw/PREVIEW/],
+                        loadplugins =&gt; [qw/Plugin::ApplyShipping/]
+                    },
                     transitions =&gt; [
                         {
                             name     =&gt; 'edit',
@@ -38,11 +42,19 @@ BEGIN {
                         }
                     ],
                 },
-                { name =&gt; 'edit_GET' },
+                {
+                    name =&gt; 'edit_GET',
+                    checkout =&gt; {
+                        phases =&gt; ['EDIT'],
+                        loadplugins =&gt; [qw/Mango::Catalyst::Checkout::Plugins::Edit/]
+                    }
+                },
                 {
                     name        =&gt; 'edit_POST',
-                    phases      =&gt; [qw/CHECKOUT_PHASE_EDIT/],
-                    loadplugins =&gt; [qw/Plugin::ScrubAddress/],
+                    checkout    =&gt; {
+                        phases      =&gt; [qw/EDIT/],
+                        loadplugins =&gt; [qw/Plugin::ScrubAddress/]
+                    },
                     transitions =&gt; [
                         {
                             name     =&gt; 'preview',
@@ -107,14 +119,19 @@ sub instance : Chained('/') PathPrefix Args(1) Template('checkout/index') {
             $c-&gt;stash-&gt;{'template'} = $state-&gt;template
               || 'checkout/' . $state-&gt;short_name;
 
+            $c-&gt;stash-&gt;{'form'} = $self-&gt;form($state-&gt;short_name);
+
             my $checkout = $state-&gt;checkout;
             $checkout-&gt;order( $self-&gt;order );
             $checkout-&gt;stash( $c-&gt;stash );
-
+warn $checkout-&gt;phases;
+warn $checkout-&gt;plugins;
             if ( $checkout-&gt;process != Handel::Constants::CHECKOUT_STATUS_OK )
             {
+                warn &quot;ERRORS&quot;;
                 $c-&gt;stash-&gt;{'errors'} = $checkout-&gt;messages;
             } else {
+                warn &quot;OK&quot;;
                 $checkout-&gt;order-&gt;update;
             }
 
@@ -149,7 +166,7 @@ sub initialize {
     my $checkout = Mango::Checkout-&gt;new(
         {
             order  =&gt; $order,
-            phases =&gt; 'CHECKOUT_PHASE_INITIALIZE',
+            phases =&gt; ['INITIALIZE'],
             stash  =&gt; $c-&gt;stash
         }
     );</diff>
      <filename>lib/Mango/Catalyst/Controller/Checkout.pm</filename>
    </modified>
    <modified>
      <diff>@@ -179,6 +179,7 @@ sub _parse_fields {
         $type =~ s/password/Password/i;
         $type =~ s/select/Select/i;
         $type =~ s/checkbox/Checkbox/i;
+        $type =~ s/fieldset/Fieldset/i;
 
         if (   $type eq 'Checkbox'
             &amp;&amp; exists $field-&gt;{'multiple'}
@@ -186,7 +187,7 @@ sub _parse_fields {
         {
             $type = 'Checkboxgroup';
         }
-        if ( $type ne 'Submit' ) {
+        if ( $type !~ /Submit|Fieldset/i ) {
             if (   !exists $field-&gt;{'label'}
                 &amp;&amp; !exists $field-&gt;{'label_loc'}
                 &amp;&amp; !exists $field-&gt;{'label_xml'} )
@@ -196,8 +197,12 @@ sub _parse_fields {
         }
 
         ## migrate disabled
-        $field-&gt;{'force_default'}  = delete $field-&gt;{'force'};
-        $field-&gt;{'retain_default'} = $field-&gt;{'force_default'};
+        if (exists $field-&gt;{'force'}) {
+            $field-&gt;{'force_default'}  = delete $field-&gt;{'force'};
+        }
+        if (exists $field-&gt;{'force_default'}) {
+            $field-&gt;{'retain_default'} = $field-&gt;{'force_default'};
+        }
         if ( exists $field-&gt;{'disabled'} ) {
             $field-&gt;{'attributes'}-&gt;{'disabled'} =
               delete $field-&gt;{'disabled'};</diff>
      <filename>lib/Mango/Form.pm</filename>
    </modified>
    <modified>
      <diff>@@ -1,6 +1 @@
-[% form.render %]
-
-
-&lt;form method=&quot;post&quot;&gt;
-&lt;input type=&quot;submit&quot; value=&quot;POST&quot; /&gt;
-&lt;/form&gt;
\ No newline at end of file
+[% form.render %]
\ No newline at end of file</diff>
      <filename>share/templates/tt/html/checkout/edit</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>bb21210cace4f65e6b0264b7968200019a157c4c</id>
    </parent>
  </parents>
  <author>
    <name>claco</name>
    <email>claco@52a70e3a-55ec-0310-b14e-7917f69ecacc</email>
  </author>
  <url>http://github.com/claco/mango/commit/33a47b530e4db12e0eb528ab6ee01c0d823c702f</url>
  <id>33a47b530e4db12e0eb528ab6ee01c0d823c702f</id>
  <committed-date>2008-06-13T19:45:43-07:00</committed-date>
  <authored-date>2008-06-13T19:45:43-07:00</authored-date>
  <message> r1677@mbp:  claco | 2008-06-13 22:48:44 -0400
 Finally cleaned up phase names as strings after tweaking Handel


git-svn-id: http://svn.icantfocus.com/CPAN/Mango/trunk@2191 52a70e3a-55ec-0310-b14e-7917f69ecacc</message>
  <tree>63211541abcc7fe935e568bc532071340487ff98</tree>
  <committer>
    <name>claco</name>
    <email>claco@52a70e3a-55ec-0310-b14e-7917f69ecacc</email>
  </committer>
</commit>
