<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>02_Passing_Data_with_XML/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>03_Flex_with_RESTful_Services/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>07_Data_Visualization/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>20_Server_Push_with_Juggernaut/rails/app/controllers/application_controller.rb</filename>
    </added>
    <added>
      <filename>22_File_Upload/rails/app/controllers/application_controller.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -14,12 +14,14 @@
 &lt;mx:HTTPService id=&quot;index&quot; 
   url=&quot;http://localhost:3000/people.xml&quot; resultFormat=&quot;e4x&quot; /&gt;
 &lt;mx:HTTPService id=&quot;update&quot;
-  url=&quot;http://localhost:3000/people/{grid.selectedItem.id}.xml?_method=put&quot; 
+  url=&quot;http://localhost:3000/people/{grid.selectedItem.id}.xml&quot; 
   contentType=&quot;application/xml&quot;
   resultFormat=&quot;e4x&quot;
   method=&quot;POST&quot;
   fault=&quot;mx.controls.Alert.show(event.toString())&quot;
-  result=&quot;index.send()&quot; /&gt;
+  result=&quot;index.send()&quot;
+  headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot;
+   /&gt;
 &lt;mx:DataGrid id=&quot;grid&quot; 
   dataProvider=&quot;{index.lastResult.person}&quot; width=&quot;100%&quot; height=&quot;50%&quot; &gt;
     &lt;mx:columns&gt;</diff>
      <filename>02_Passing_Data_with_XML/flex/src/HttpServiceToUpdate.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -22,12 +22,14 @@
 &lt;mx:HTTPService id=&quot;index&quot; 
   url=&quot;http://localhost:3000/people.xml&quot; resultFormat=&quot;e4x&quot; /&gt;
 &lt;mx:HTTPService id=&quot;update&quot;
-  url=&quot;http://localhost:3000/people/{grid.selectedItem.id}.xml?_method=put&quot; 
+  url=&quot;http://localhost:3000/people/{grid.selectedItem.id}.xml&quot; 
   contentType=&quot;application/xml&quot;
   resultFormat=&quot;e4x&quot;
   method=&quot;POST&quot;
   fault=&quot;mx.controls.Alert.show(event.toString())&quot;
-  result=&quot;handleResult(event.result as XML)&quot; /&gt;
+  result=&quot;handleResult(event.result as XML)&quot;
+  headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot;
+ /&gt;
 &lt;mx:DataGrid id=&quot;grid&quot; 
   dataProvider=&quot;{index.lastResult.person}&quot; width=&quot;100%&quot; height=&quot;50%&quot; &gt;
     &lt;mx:columns&gt;</diff>
      <filename>02_Passing_Data_with_XML/flex/src/HttpServiceToUpdateWithErroHandling.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -6,7 +6,7 @@ class PeopleController &lt; ApplicationController
 
     respond_to do |format|
       format.html # index.html.erb
-      format.xml  { render :xml =&gt; @people }
+      format.xml  { render :xml =&gt; @people.to_xml }
     end
   end
 
@@ -66,7 +66,7 @@ class PeopleController &lt; ApplicationController
         format.xml  { head :ok }
       else
         format.html { render :action =&gt; &quot;edit&quot; }
-        format.xml  { render :xml =&gt; @person.errors, :status =&gt; :unprocessable_entity }
+        format.xml  { render :xml =&gt; @person.errors} #, :status =&gt; :unprocessable_entity }
       end
     end
   end</diff>
      <filename>02_Passing_Data_with_XML/rails/app/controllers/people_controller.rb</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>02_Passing_Data_with_XML/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -48,15 +48,18 @@
     method=&quot;POST&quot; resultFormat=&quot;e4x&quot; contentType=&quot;application/xml&quot;
     result=&quot;accountsIndex.send()&quot;  /&gt;
 &lt;mx:HTTPService id=&quot;accountsUpdate&quot;
- url=&quot;{CONTEXT_URL}/accounts/{accountsGrid.selectedItem.id}?_method=put&quot;
-    method=&quot;POST&quot; resultFormat=&quot;e4x&quot;  contentType=&quot;application/xml&quot;  /&gt;
+ url=&quot;{CONTEXT_URL}/accounts/{accountsGrid.selectedItem.id}&quot;
+    method=&quot;POST&quot; resultFormat=&quot;e4x&quot;  contentType=&quot;application/xml&quot;  
+    headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot;
+    /&gt;
 &lt;mx:HTTPService id=&quot;accountsDelete&quot;  
     url=&quot;{CONTEXT_URL}/accounts/{accountsGrid.selectedItem.id}&quot;
-    method=&quot;POST&quot; resultFormat=&quot;e4x&quot; contentType=&quot;application/xml&quot;
-    result=&quot;accountsIndex.send()&quot; &gt;
-  &lt;mx:request&gt;
-    &lt;_method&gt;delete&lt;/_method&gt;
-  &lt;/mx:request&gt;  
+    method=&quot;POST&quot;    
+    result=&quot;accountsIndex.send()&quot; 
+    headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'delete'}}&quot;&gt;
+	&lt;mx:request&gt;
+	   &lt;flex&gt;true&lt;/flex&gt;
+	&lt;/mx:request&gt; 	
 &lt;/mx:HTTPService&gt;
 
 &lt;!-- POSITIONS --&gt;
@@ -76,9 +79,11 @@
     result=&quot;positionsIndex.send()&quot;  /&gt;
 &lt;mx:HTTPService id=&quot;positionsDelete&quot;
   url=&quot;{CONTEXT_URL}/{positionsPrefix}/positions/
-     {positionsGrid.selectedItem.id}?_method=delete&quot;
+     {positionsGrid.selectedItem.id}&quot;
     method=&quot;POST&quot; resultFormat=&quot;e4x&quot; contentType=&quot;application/xml&quot;
-    result=&quot;positionsIndex.send()&quot;&gt;
+    result=&quot;positionsIndex.send()&quot;
+    headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'delete'}}&quot;
+    &gt;
 &lt;/mx:HTTPService&gt;
 
 &lt;!-- MOVEMENTS --&gt;</diff>
      <filename>03_Flex_with_RESTful_Services/flex/src/main.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>03_Flex_with_RESTful_Services/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -101,6 +101,8 @@ function GetSwfVer(){
 				if (versionRevision.indexOf(&quot;d&quot;) &gt; 0) {
 					versionRevision = versionRevision.substring(0, versionRevision.indexOf(&quot;d&quot;));
 				}
+			} else if (versionRevision[0] == &quot;b&quot;) {
+				versionRevision = versionRevision.substring(1);
 			}
 			var flashVer = versionMajor + &quot;.&quot; + versionMinor + &quot;.&quot; + versionRevision;
 		}
@@ -113,7 +115,7 @@ function GetSwfVer(){
 	else if (navigator.userAgent.toLowerCase().indexOf(&quot;webtv&quot;) != -1) flashVer = 2;
 	else if ( isIE &amp;&amp; isWin &amp;&amp; !isOpera ) {
 		flashVer = ControlVersion();
-	}	
+	}
 	return flashVer;
 }
 </diff>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/flex/html-template/AC_OETags.js</filename>
    </modified>
    <modified>
      <diff>@@ -99,23 +99,40 @@ BrowserHistory = (function() {
         return document.getElementById(&quot;safari_remember_field&quot;);
     }
 
-    /* Get the Flash player object for performing ExternalInterface callbacks. */
-    function getPlayer(objectId) {
-        var objectId = objectId || null;
-        var player = null; /* AJH, needed?  = document.getElementById(getPlayerId()); */
-        if (browser.ie &amp;&amp; objectId != null) {
-            player = document.getElementById(objectId);
-        }
-        if (player == null) {
-            player = document.getElementsByTagName('object')[0];
-        }
-        
-        if (player == null || player.object == null) {
-            player = document.getElementsByTagName('embed')[0];
-        }
-
-        return player;
-    }
+    // Get the Flash player object for performing ExternalInterface callbacks.
+    // Updated for changes to SWFObject2.
+    function getPlayer(id) {
+		if (id &amp;&amp; document.getElementById(id)) {
+			var r = document.getElementById(id);
+			if (typeof r.SetVariable != &quot;undefined&quot;) {
+				return r;
+			}
+			else {
+				var o = r.getElementsByTagName(&quot;object&quot;);
+				var e = r.getElementsByTagName(&quot;embed&quot;);
+				if (o.length &gt; 0 &amp;&amp; typeof o[0].SetVariable != &quot;undefined&quot;) {
+					return o[0];
+				}
+				else if (e.length &gt; 0 &amp;&amp; typeof e[0].SetVariable != &quot;undefined&quot;) {
+					return e[0];
+				}
+			}
+		}
+		else {
+			var o = document.getElementsByTagName(&quot;object&quot;);
+			var e = document.getElementsByTagName(&quot;embed&quot;);
+			if (e.length &gt; 0 &amp;&amp; typeof e[0].SetVariable != &quot;undefined&quot;) {
+				return e[0];
+			}
+			else if (o.length &gt; 0 &amp;&amp; typeof o[0].SetVariable != &quot;undefined&quot;) {
+				return o[0];
+			}
+			else if (o.length &gt; 1 &amp;&amp; typeof o[1].SetVariable != &quot;undefined&quot;) {
+				return o[1];
+			}
+		}
+		return undefined;
+	}
     
     function getPlayers() {
         var players = [];</diff>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/flex/html-template/history/history.js</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@
 
         var url = document.location.href;
         processUrl();
-        document.write(url);
+        document.write(encodeURIComponent(url));
     &lt;/script&gt;
     Hidden frame for Browser History support.
     &lt;/body&gt;</diff>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/flex/html-template/history/historyFrame.html</filename>
    </modified>
    <modified>
      <diff>@@ -27,9 +27,11 @@
 &lt;/mx:HTTPService&gt;        
 
 &lt;mx:HTTPService id=&quot;noteUpdate&quot;
-  url=&quot;http://localhost:3000/notes/id.xml?_method=put&quot;
+  url=&quot;http://localhost:3000/notes/id.xml&quot;
   method=&quot;POST&quot;
   resultFormat=&quot;e4x&quot;
-  contentType=&quot;application/xml&quot; /&gt;    
+  contentType=&quot;application/xml&quot;
+  headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot;
+/&gt;    
 &lt;/cairngorm:ServiceLocator&gt;
 </diff>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/flex/src/flexonrails/examples/notetaker/business/Services.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -119,6 +119,7 @@ package resources
 			http.url = id ? HOST+resource : HOST+resources;			
 			if (customVerb!=null) http.url += &quot;/&quot;+customVerb
 			if (http==destroy) http.url += &quot;?_method=delete&quot;  //FIXME: use encode URL.
+			if (http==update) http.headers={X_HTTP_METHOD_OVERRIDE:'put'};			
 			http.method = method;
 			http.resultFormat = &quot;e4x&quot;;
 			http.contentType = &quot;application/xml&quot;;</diff>
      <filename>07_Data_Visualization/flex/src/resources/ActiveResource.as</filename>
    </modified>
    <modified>
      <diff>@@ -52,7 +52,7 @@
             
                 &lt;mx:HLOCSeries id=&quot;hlSerie&quot;  
                 	openField=&quot;open&quot; highField=&quot;high&quot; 
-                	lowField=&quot;low&quot; closeField=&quot;close&quot; &gt;
+                	lowField=&quot;low&quot; closeField=&quot;close&quot;&gt;
 					&lt;mx:verticalAxis&gt;
 	                   &lt;mx:LinearAxis id=&quot;v1&quot;  baseAtZero=&quot;false&quot; title=&quot;Price&quot; /&gt;
 	                &lt;/mx:verticalAxis&gt;                                  	</diff>
      <filename>07_Data_Visualization/flex/src/views/HistoricalPrices.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>07_Data_Visualization/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -67,10 +67,11 @@
     contentType=&quot;application/xml&quot; 
     result=&quot;resultHandler(event)&quot; /&gt;
 &lt;mx:HTTPService id=&quot;categoriesUpdate&quot;
- url=&quot;http://localhost:3000/categories/{grid.selectedItem.@id}.xml?_method=put&quot;
+ url=&quot;http://localhost:3000/categories/{grid.selectedItem.@id}.xml&quot;
     method=&quot;POST&quot; 
     resultFormat=&quot;e4x&quot;  
     contentType=&quot;application/xml&quot; 
+ 	headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot;    
     result=&quot;resultHandler(event)&quot; /&gt;
 &lt;mx:HTTPService id=&quot;categoriesDelete&quot;
     url=&quot;http://localhost:3000/categories/{grid.selectedItem.@id}.xml&quot;</diff>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/flex/src/ForActsAsNestedSetAdvancedDataGridCRUD.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -9,8 +9,9 @@
     resultFormat=&quot;e4x&quot; 
     contentType=&quot;application/xml&quot; 
     result=&quot;resultHandler(event)&quot; /&gt;
-&lt;mx:HTTPService id=&quot;categoriesUpdate&quot;  url=&quot;http://localhost:3000/categories/{tree.selectedItem.@id}.xml?_method=put&quot;
-          method=&quot;POST&quot; resultFormat=&quot;e4x&quot;  contentType=&quot;application/xml&quot; result=&quot;resultHandler(event)&quot; /&gt;              
+&lt;mx:HTTPService id=&quot;categoriesUpdate&quot;  url=&quot;http://localhost:3000/categories/{tree.selectedItem.@id}.xml&quot;
+          method=&quot;POST&quot; resultFormat=&quot;e4x&quot;  contentType=&quot;application/xml&quot;  headers=&quot;{{X_HTTP_METHOD_OVERRIDE:'put'}}&quot; 
+          result=&quot;resultHandler(event)&quot; /&gt;              
 &lt;mx:HTTPService id=&quot;categoriesDelete&quot;  url=&quot;http://localhost:3000/categories/{tree.selectedItem.@id}.xml&quot;
         method=&quot;POST&quot; resultFormat=&quot;e4x&quot; result=&quot;resultHandler(event)&quot;&gt;
   &lt;mx:request xmlns=&quot;&quot;&gt;</diff>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/flex/src/ForActsAsNestedSetCRUD.mxml</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -0,0 +1,191 @@
+
+
+Processing CategoriesController#index (for 127.0.0.1 at 2009-05-02 15:29:47) [GET]
+  *[4;36;1mCategory Load (1.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;35;1mCategory Load (1.0ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.9ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 52ms (View: 1, DB: 10) | 200 OK [http://localhost/categories]
+
+
+Processing CategoriesController#index (for 127.0.0.1 at 2009-05-02 15:30:00) [GET]
+  *[4;35;1mCategory Load (1.0ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;36;1mCategory Load (0.9ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.8ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 31ms (View: 1, DB: 9) | 200 OK [http://localhost/categories]
+
+
+Processing CategoriesController#index (for 127.0.0.1 at 2009-05-02 15:31:53) [GET]
+  *[4;36;1mCategory Load (0.9ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.9ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (1.1ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 32ms (View: 1, DB: 10) | 200 OK [http://localhost/categories]
+
+
+Processing CategoriesController#update to xml (for 127.0.0.1 at 2009-05-02 15:32:02) [PUT]
+  Parameters: {&quot;category&quot;=&gt;{&quot;name&quot;=&gt;&quot;Bags&quot;, &quot;id&quot;=&gt;&quot;3&quot;, &quot;qty_in_stock&quot;=&gt;&quot;2&quot;, &quot;description&quot;=&gt;&quot;some bags&quot;}, &quot;id&quot;=&gt;&quot;3&quot;}
+  *[4;35;1mCategory Load (0.2ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+WARNING: Can't mass-assign these protected attributes: id
+  *[4;36;1mCategory Update (2.4ms)*[0m   *[0;1mUPDATE &quot;categories&quot; SET &quot;description&quot; = 'some bags', &quot;updated_at&quot; = '2009-05-02 21:32:02' WHERE &quot;id&quot; = 3*[0m
+  *[4;35;1mCategory Load (0.7ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;36;1mCategory Load (0.8ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (1.2ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.8ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 40ms (View: 1, DB: 12) | 200 OK [http://localhost/categories/3.xml]
+
+
+Processing CategoriesController#move (for 127.0.0.1 at 2009-05-02 15:32:09) [POST]
+  Parameters: {&quot;category&quot;=&gt;{&quot;name&quot;=&gt;&quot;Bags&quot;, &quot;id&quot;=&gt;&quot;3&quot;, &quot;qty_in_stock&quot;=&gt;&quot;2&quot;, &quot;description&quot;=&gt;&quot;some bags&quot;, &quot;parent_id&quot;=&gt;&quot;3&quot;}, &quot;id&quot;=&gt;&quot;3&quot;}
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = '3') LIMIT 1*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+  *[4;36;1mCategory Load (0.2ms)*[0m   *[0;1mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+  *[4;35;1mCACHE (0.0ms)*[0m   *[0mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+
+ActiveRecord::ActiveRecordError (Impossible move, target node cannot be inside moved tree.):
+  app/controllers/categories_controller.rb:35:in `move'
+
+Rendered rescues/_trace (133.5ms)
+Rendered rescues/_request_and_response (1.7ms)
+Rendering rescues/layout (internal_server_error)
+
+
+Processing ApplicationController#index (for 127.0.0.1 at 2009-05-02 15:32:36) [GET]
+
+ActionController::RoutingError (No route matches &quot;/accounts&quot; with {:method=&gt;:get}):
+  
+
+Rendering rescues/layout (not_found)
+
+
+Processing CategoriesController#index (for 127.0.0.1 at 2009-05-02 15:33:22) [GET]
+  *[4;36;1mCategory Load (1.1ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (1.1ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.7ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.7ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 51ms (View: 1, DB: 10) | 200 OK [http://localhost/categories]
+
+
+Processing CategoriesController#move (for 127.0.0.1 at 2009-05-02 15:33:26) [POST]
+  Parameters: {&quot;category&quot;=&gt;{&quot;name&quot;=&gt;&quot;Bags&quot;, &quot;id&quot;=&gt;&quot;3&quot;, &quot;qty_in_stock&quot;=&gt;&quot;2&quot;, &quot;description&quot;=&gt;&quot;some bags&quot;, &quot;parent_id&quot;=&gt;&quot;9&quot;}, &quot;id&quot;=&gt;&quot;9&quot;}
+  *[4;35;1mCategory Load (0.3ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = '9') LIMIT 1*[0m
+  *[4;36;1mCategory Load (0.3ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+  *[4;35;1mCategory Load (0.2ms)*[0m   *[0mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 9) *[0m
+  *[4;36;1mCategory Load (0.1ms)*[0m   *[0;1mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+  *[4;35;1mCategory Update (2.3ms)*[0m   *[0mUPDATE &quot;categories&quot; SET &quot;lft&quot; = CASE WHEN &quot;lft&quot; BETWEEN 3 AND 4 THEN &quot;lft&quot; + 15 - 4 WHEN &quot;lft&quot; BETWEEN 5 AND 15 THEN &quot;lft&quot; + 3 - 5 ELSE &quot;lft&quot; END, &quot;rgt&quot; = CASE WHEN &quot;rgt&quot; BETWEEN 3 AND 4 THEN &quot;rgt&quot; + 15 - 4 WHEN &quot;rgt&quot; BETWEEN 5 AND 15 THEN &quot;rgt&quot; + 3 - 5 ELSE &quot;rgt&quot; END, &quot;parent_id&quot; = CASE WHEN id = 3 THEN 9 ELSE &quot;parent_id&quot; END *[0m
+  *[4;36;1mCategory Load (0.3ms)*[0m   *[0;1mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 9) *[0m
+  *[4;35;1mCategory Load (0.2ms)*[0m   *[0mSELECT &quot;lft&quot;, &quot;rgt&quot;, &quot;parent_id&quot; FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;35;1mCategory Load (0.9ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (1.0ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 43ms (View: 1, DB: 12) | 200 OK [http://localhost/categories/9/move]
+
+
+Processing CategoriesController#index (for 127.0.0.1 at 2009-05-02 15:33:38) [GET]
+  *[4;35;1mCategory Load (1.0ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;36;1mCategory Load (0.8ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.7ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.6ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 28ms (View: 1, DB: 8) | 200 OK [http://localhost/categories]
+
+
+Processing CategoriesController#update to xml (for 127.0.0.1 at 2009-05-02 15:33:46) [PUT]
+  Parameters: {&quot;category&quot;=&gt;{&quot;name&quot;=&gt;&quot;Bags&quot;, &quot;id&quot;=&gt;&quot;3&quot;, &quot;qty_in_stock&quot;=&gt;&quot;2&quot;, &quot;description&quot;=&gt;&quot;some bagssss&quot;}, &quot;id&quot;=&gt;&quot;3&quot;}
+  *[4;36;1mCategory Load (0.2ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;id&quot; = 3) *[0m
+WARNING: Can't mass-assign these protected attributes: id
+  *[4;35;1mCategory Update (0.3ms)*[0m   *[0mUPDATE &quot;categories&quot; SET &quot;description&quot; = 'some bagssss', &quot;updated_at&quot; = '2009-05-02 21:33:46' WHERE &quot;id&quot; = 3*[0m
+  *[4;36;1mCategory Load (0.7ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; IS NULL) ORDER BY &quot;lft&quot; LIMIT 1*[0m
+  *[4;35;1mCategory Load (0.8ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 1) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (1.0ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 2) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 4) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 5) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 6) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.8ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 7) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 8) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 9) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.4ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 3) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.4ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 10) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.7ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 11) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.6ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 12) ORDER BY &quot;lft&quot;*[0m
+  *[4;35;1mCategory Load (0.5ms)*[0m   *[0mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 13) ORDER BY &quot;lft&quot;*[0m
+  *[4;36;1mCategory Load (0.5ms)*[0m   *[0;1mSELECT * FROM &quot;categories&quot; WHERE (&quot;categories&quot;.&quot;parent_id&quot; = 14) ORDER BY &quot;lft&quot;*[0m
+Completed in 36ms (View: 1, DB: 9) | 200 OK [http://localhost/categories/3.xml]</diff>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/rails/log/development.log</filename>
    </modified>
    <modified>
      <diff>@@ -6,12 +6,14 @@ $ sudo gem install json
 $ sudo gem install eventmachine
 $ sudo gem install juggernaut
 
-Configure juggernaut
+Install the juggernaut plugin
+$ ./script/plugin install git://github.com/maccman/juggernaut_plugin.git
+
+Configure and start juggernaut
 
 $ juggernaut -g config/juggernaut.yml
 $ juggernaut -c config/juggernaut.yml
 
-Install the juggernaut plugin
-$ ./script/plugin install http://juggernaut.rubyforge.org/svn/trunk/juggernaut
+Start Rails: ./script/server
 
 On the Flex side the main application is IM.mxml and is a simplistic chat client.</diff>
      <filename>20_Server_Push_with_Juggernaut/README</filename>
    </modified>
    <modified>
      <diff>@@ -5,15 +5,15 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')
 
 Rails::Initializer.run do |config|
   config.gem &quot;juggernaut&quot;, :version =&gt; &quot;0.5.7&quot;
-  config.gem &quot;eventmachine&quot;, :version =&gt; &quot;0.12.2&quot;
-  config.gem &quot;json&quot;, :version =&gt; &quot;1.1.3&quot;
+  config.gem &quot;eventmachine&quot;, :version =&gt; &quot;0.12.6&quot;
+  config.gem &quot;json&quot;, :version =&gt; &quot;1.1.4&quot;
   # Settings in config/environments/* take precedence over those specified here.
   # Application configuration should go into files in config/initializers
   # -- all .rb files in that directory are automatically loaded.</diff>
      <filename>20_Server_Push_with_Juggernaut/rails/config/environment.rb</filename>
    </modified>
    <modified>
      <diff>@@ -0,0 +1,10 @@
+
+
+Processing MessengerController#message (for 127.0.0.1 at 2009-05-02 15:41:30) [POST]
+  Parameters: {&quot;message&quot;=&gt;&quot;yo&quot;, &quot;user&quot;=&gt;&quot;me&quot;}
+Completed in 3ms (View: 1, DB: 0) | 200 OK [http://localhost/messenger/message]
+
+
+Processing MessengerController#message (for 127.0.0.1 at 2009-05-02 15:41:44) [POST]
+  Parameters: {&quot;message&quot;=&gt;&quot;yo&quot;, &quot;user&quot;=&gt;&quot;ohter&quot;}
+Completed in 5ms (View: 3, DB: 0) | 200 OK [http://localhost/messenger/message]</diff>
      <filename>20_Server_Push_with_Juggernaut/rails/log/development.log</filename>
    </modified>
    <modified>
      <diff>@@ -22,20 +22,20 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
 
 function Juggernaut(options) {
-    this.is_connected = false,
-    this.attempting_to_reconnect = false
-    this.ever_been_connected = false
-    this.hasFirebug = &quot;console&quot; in window &amp;&amp; &quot;firebug&quot; in window.console
-    this.options = options
+    this.is_connected = false;
+    this.attempting_to_reconnect = false;
+    this.ever_been_connected = false;
+    this.hasLogger = &quot;console&quot; in window &amp;&amp; &quot;log&quot; in window.console;
+    this.options = options;
     this.bindToWindow();
   }
 
-Juggernaut.fn = Juggernaut.prototype
+Juggernaut.fn = Juggernaut.prototype;
 
 Juggernaut.fn.logger = function(msg) {
     if (this.options.debug) {
       msg = &quot;Juggernaut: &quot; + msg + &quot; on &quot; + this.options.host + ':' + this.options.port;
-      this.hasFirebug ? console.log(msg) : alert(msg);
+      this.hasLogger ? console.log(msg) : alert(msg);
     }
   }
 
@@ -95,7 +95,6 @@ Juggernaut.fn.connected = function(e) {
     this.fire_event('connected');
   }
 
-// OVERRIDE FOR CHAT STYLE APPS - POSSIBLE MALICIOUS CONTENT CAN BE EVALED
 Juggernaut.fn.receiveData = function(e) {
      var msg = Juggernaut.parseJSON(unescape(e.toString()));
      this.currentMsgId = msg.id;
@@ -106,7 +105,7 @@ Juggernaut.fn.receiveData = function(e) {
 
 var juggernaut;
 
-/*** START PROTOTYPE SPECIFIC - OVERRIDE FOR OTHER FRAMEWORKS ***/
+// Prototype specific - override for other frameworks
 Juggernaut.fn.fire_event = function(fx_name) {
      $(document).fire(&quot;juggernaut:&quot; + fx_name);
    }
@@ -156,7 +155,6 @@ Juggernaut.fn.appendFlashObject = function(){
       {'id': this.options.swf_name, 'name': this.options.swf_name}
     );
   }
-  
 
 Juggernaut.fn.refreshFlashObject = function(){
     this.swf().remove();
@@ -200,6 +198,4 @@ the first in ' + (this.options.reconnect_intervals || 3) + ' seconds');
         }.bind(this), (this.options.reconnect_intervals || 3) * 1000 * (i + 1))
       }
     }
-  }
-
-
+  }
\ No newline at end of file</diff>
      <filename>20_Server_Push_with_Juggernaut/rails/public/javascripts/juggernaut/juggernaut.js</filename>
    </modified>
    <modified>
      <diff>@@ -33,6 +33,5 @@
   &lt;%=h @asset.thumbnail %&gt;
 &lt;/p&gt;
 
-
 &lt;%= link_to 'Edit', edit_asset_path(@asset) %&gt; |
 &lt;%= link_to 'Back', assets_path %&gt;</diff>
      <filename>22_File_Upload/rails/app/views/assets/show.html.erb</filename>
    </modified>
    <modified>
      <diff>@@ -5,7 +5,7 @@
 # ENV['RAILS_ENV'] ||= 'production'
 
 # Specifies gem version of Rails to use when vendor/rails is not present
-RAILS_GEM_VERSION = '2.1.0' unless defined? RAILS_GEM_VERSION
+RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
 
 # Bootstrap the Rails environment, frameworks, and default configuration
 require File.join(File.dirname(__FILE__), 'boot')</diff>
      <filename>22_File_Upload/rails/config/environment.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>02_Passing_Data_with_XML/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>03_Flex_with_RESTful_Services/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/flex/libs/fluint_v1.swc</filename>
    </removed>
    <removed>
      <filename>04_Using_Fluint_to_Test_a_Flex_with_Rails_Application/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>07_Data_Visualization/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>18_Advanced_Data_Grid_and_Awesome_Nested_Sets/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/app/controllers/application.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/LICENSE</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/README</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/init.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/install.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/lib/juggernaut.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/lib/juggernaut_helper.rb</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/expressinstall.swf</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/jquery.js</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/jquerynaut.js</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/json.js</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/juggernaut.as</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/juggernaut.js</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/juggernaut.swf</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/juggernaut.yml</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/juggernaut_hosts.yml</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/log/juggernaut.log</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/media/swfobject.js</filename>
    </removed>
    <removed>
      <filename>20_Server_Push_with_Juggernaut/rails/vendor/plugins/juggernaut/tasks/juggernaut.rake</filename>
    </removed>
    <removed>
      <filename>22_File_Upload/rails/app/controllers/application.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>102a32e079f8153fa5f07fe495e8e59f9d8a0af4</id>
    </parent>
  </parents>
  <author>
    <name>Daniel Wanja</name>
    <email>daniel@daniel-wanjas-macbook.local</email>
  </author>
  <url>http://github.com/danielwanja/flexonrails/commit/ba3de7c18ec550ed5cfbbcade67d3740c998ca9d</url>
  <id>ba3de7c18ec550ed5cfbbcade67d3740c998ca9d</id>
  <committed-date>2009-05-02T20:03:51-07:00</committed-date>
  <authored-date>2009-05-02T20:03:51-07:00</authored-date>
  <message>Compatibility with Rails 2.3.2</message>
  <tree>39dd9e81483bbd1758f83dc8a366766a0fc00004</tree>
  <committer>
    <name>Daniel Wanja</name>
    <email>daniel@daniel-wanjas-macbook.local</email>
  </committer>
</commit>
