<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>mack-javascript/spec/mack-javascript/generators/js_app_generator_spec.rb</filename>
    </added>
    <added>
      <filename>mack-javascript/spec/mack-javascript/helpers/jquery_helper_spec.rb</filename>
    </added>
    <added>
      <filename>mack-javascript/spec/mack-javascript/helpers/js_generator_spec.rb</filename>
    </added>
    <added>
      <filename>mack-javascript/spec/mack-javascript/helpers/prototype_helper_spec.rb</filename>
    </added>
    <added>
      <filename>mack-javascript/spec/mack-javascript/view_helpers/html_helpers_spec.rb</filename>
    </added>
    <added>
      <filename>mack-javascript/spec/mack-javascript/view_helpers/view_template_rjs.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -41,7 +41,7 @@ module Mack
             
             if options[:method] &amp;&amp; options[:method].to_sym == :put || options[:method] == :delete
               js_options['data'] = append_ajax_data(js_options['data'], &quot;_method=#{options[:method]}&quot;)
-    				end
+            end
             
             if js_options['type'] == &quot;'post'&quot; &amp;&amp; options[:authenticity_token]
               js_options['data'] = append_ajax_data(js_options['data'], &quot;__authenticity_token=#{options.delete(:authenticity_token)}&quot;)
@@ -52,11 +52,11 @@ module Mack
           
           def append_ajax_data(data, new_data)
             if data
-							data &lt;&lt; &quot; + '&amp;&quot;
-						else
-							data = &quot;'&quot;
-						end
-						data &lt;&lt; &quot;#{new_data}'&quot;
+              data &lt;&lt; &quot; + '&amp;&quot;
+            else
+              data = &quot;'&quot;
+            end
+            data &lt;&lt; &quot;#{new_data}'&quot;
           end
 
           def options_for_javascript(options)
@@ -127,12 +127,12 @@ module Mack
         # page.select('.rakim').children would give you a collection consisting of
         # the ul element, the p element, and the div with id 'technique'       
         def children
-      	  add &quot;children()&quot;
+          add &quot;children()&quot;
         end
         
         # returns a collection of the immediate parent of each selected element
-      	def parent
-      	  add &quot;parent()&quot;
+        def parent
+          add &quot;parent()&quot;
         end
         
         # returns a collection of every parent up the chain to the root of the document
@@ -154,38 +154,38 @@ module Mack
         # of both divs and the ul. 
         # page.select('#featuring').ancestors('#long_live') will give you the div with
         # id 'long_live'
-      	def ancestors(selector = nil)
-      	  add &quot;parents(#{optional_selector(selector)})&quot;
+        def ancestors(selector = nil)
+          add &quot;parents(#{optional_selector(selector)})&quot;
         end
         
         # gets all siblings for each element selected
         # Takes an optional selector as an argument
-      	def siblings(selector = nil)
-      	  add &quot;siblings(#{optional_selector(selector)})&quot;
+        def siblings(selector = nil)
+          add &quot;siblings(#{optional_selector(selector)})&quot;
         end
         
         # gets the next immediate sibling for each element selected
         # Takes an optional selector as an argument
-      	def next(selector = nil)
-      	  add &quot;next(#{optional_selector(selector)})&quot;
+        def next(selector = nil)
+          add &quot;next(#{optional_selector(selector)})&quot;
         end
         
         # gets the previous immediate sibling for each element selected
         # Takes an optional selector as an argument
-      	def previous(selector = nil)
-      	  add &quot;prev(#{optional_selector(selector)})&quot;
+        def previous(selector = nil)
+          add &quot;prev(#{optional_selector(selector)})&quot;
         end
         
         # gets every next sibling for each element selected
         # Takes an optional selector as an argument
-      	def all_next(selector = nil)
-      	  add &quot;nextAll(#{optional_selector(selector)})&quot;
+        def all_next(selector = nil)
+          add &quot;nextAll(#{optional_selector(selector)})&quot;
         end
         
         # gets every previous sibling for each element selected
         # Takes an optional selector as an argument
-      	def all_previous(selector = nil)
-      	  add &quot;prevAll(#{optional_selector(selector)})&quot;
+        def all_previous(selector = nil)
+          add &quot;prevAll(#{optional_selector(selector)})&quot;
         end
 
 
@@ -200,8 +200,8 @@ module Mack
         
         
         def remove_class(klass = '')
-        	add &quot;removeClass('#{klass}')&quot;
-      	end
+          add &quot;removeClass('#{klass}')&quot;
+        end
 
         def set_attribute(name, value)
           value = &quot;'#{value}'&quot; if value.is_a? String
@@ -209,17 +209,17 @@ module Mack
         end
 
         def remove_attribute(name)
-        	add &quot;removeAttr('#{name}')&quot;
-      	end
+          add &quot;removeAttr('#{name}')&quot;
+        end
 
 
 
 
-      	#-- DOM Manipulation --#
+        #-- DOM Manipulation --#
         
         # inserts html into the selected place for the specfied elemets
         #
-      	# +position+ may be one of:
+        # +position+ may be one of:
         # 
         # &lt;tt&gt;:top&lt;/tt&gt;::    HTML is inserted inside the element, before the 
         #                    element's existing content.
@@ -264,7 +264,7 @@ module Mack
         #
         # Tip: use this with a partial containing your html:
         # page.select('.rakim').insert(:before, render(:partial, 'the_r', :format =&gt; :html))
-      	def insert(position, html)
+        def insert(position, html)
           position = {:bottom =&gt; 'append', :top =&gt; 'prepend'}[position.to_sym] || position.to_s
           add &quot;#{position}('#{escape_javascript(html)}')&quot;
         end
@@ -318,7 +318,7 @@ module Mack
 
 
 
-      	#-- Effects --#
+        #-- Effects --#
         # 
         # All five effects methods in JquerySelector (morph, effect, show, hide, toggle)
         # take the same options hash. This can consist of:
@@ -338,79 +338,79 @@ module Mack
         # http://www.robertpenner.com/easing/easing_demo.html
         #
         # The full list of jquery easing options:
-      	# linear, swing, easeInQuad, easeOutQuad, easeInOutQuad, easeInCubic, easeOutCubic, 
-      	# easeInOutCubic, easeInQuart, easeOutQuart, easeInOutQuart, easeInQuint, easeOutQuint,
-      	# easeInOutQuint, easeInSine, easeOutSine, easeInOutSine, easeInExpo, easeOutExpo, 
-      	# easeInOutExpo, easeInCirc, easeOutCirc, easeInOutCirc, easeInElastic, easeOutElastic,
-      	# easeInOutElastic, easeInBack, easeOutBack, easeInOutBack, easeInBounce, easeOutBounce,
-      	# easeInOutBounce:
-      	#
-      	# --Callback--
-      	#
-      	# this is a function that will get called when your effect is done. You can use 
-      	# page.function to build it. Note: This function gets called for each element selected.
-      	# For instance, in the following example, if there are 10 elements with the class 'rakim'
-      	# then the function will be called 10 times. If you want to target each of the 10 elements
-      	# in the callback function, use page.select('this')
-      	#
-      	# func = page.function.body do |p|
+        # linear, swing, easeInQuad, easeOutQuad, easeInOutQuad, easeInCubic, easeOutCubic, 
+        # easeInOutCubic, easeInQuart, easeOutQuart, easeInOutQuart, easeInQuint, easeOutQuint,
+        # easeInOutQuint, easeInSine, easeOutSine, easeInOutSine, easeInExpo, easeOutExpo, 
+        # easeInOutExpo, easeInCirc, easeOutCirc, easeInOutCirc, easeInElastic, easeOutElastic,
+        # easeInOutElastic, easeInBack, easeOutBack, easeInOutBack, easeInBounce, easeOutBounce,
+        # easeInOutBounce:
+        #
+        # --Callback--
+        #
+        # this is a function that will get called when your effect is done. You can use 
+        # page.function to build it. Note: This function gets called for each element selected.
+        # For instance, in the following example, if there are 10 elements with the class 'rakim'
+        # then the function will be called 10 times. If you want to target each of the 10 elements
+        # in the callback function, use page.select('this')
+        #
+        # func = page.function.body do |p|
         #          p.select('this').insert(:top, '&lt;h1&gt;Cool Effects&lt;/h1&gt;').effect(:highlight)
         #        end
-      	# page.select('.rakim').effect(:slide_down, :callback =&gt; func)
-      	#
-      	# The above code will make every element with class 'rakim' slide down. When they are done
-      	# sliding, the h1 tag will be inserted in the top of each element, and each element will 
-      	# be highlighted. Instead of this, you could do the following
-      	# page.select('.rakim').effect(:slide_down).insert(:top, '&lt;h1&gt;Cool Effects&lt;/h1&gt;').effect(:highlight)
-      	# But this way, the insertion won't wait for the first animation to be done before occurring.
-      	
-      	
-      	
-      	# Takes a hash of css properties you want the selected elements to 'morph' into.
-      	# Say you want all elements with class rakim to transition to only having half
-      	# the opacity and having a red background, and you want the transition to last 4
-      	# seconds
-      	# page.select('.rakim').morph({:opacity =&gt; 0.5, :backgroundColor =&gt; '#f00'}, :duration =&gt; 4000)
-      	# You can see a list of css properties here http://www.w3schools.com/CSS/css_reference.asp
-      	# The properties in your hash should be camelcase: :backgroundColor instead of
-      	# background-color
-      	def morph(hsh, options = nil)
+        # page.select('.rakim').effect(:slide_down, :callback =&gt; func)
+        #
+        # The above code will make every element with class 'rakim' slide down. When they are done
+        # sliding, the h1 tag will be inserted in the top of each element, and each element will 
+        # be highlighted. Instead of this, you could do the following
+        # page.select('.rakim').effect(:slide_down).insert(:top, '&lt;h1&gt;Cool Effects&lt;/h1&gt;').effect(:highlight)
+        # But this way, the insertion won't wait for the first animation to be done before occurring.
+        
+        
+        
+        # Takes a hash of css properties you want the selected elements to 'morph' into.
+        # Say you want all elements with class rakim to transition to only having half
+        # the opacity and having a red background, and you want the transition to last 4
+        # seconds
+        # page.select('.rakim').morph({:opacity =&gt; 0.5, :backgroundColor =&gt; '#f00'}, :duration =&gt; 4000)
+        # You can see a list of css properties here http://www.w3schools.com/CSS/css_reference.asp
+        # The properties in your hash should be camelcase: :backgroundColor instead of
+        # background-color
+        def morph(hsh, options = nil)
           options[:complete] = options.delete(:callback) if options &amp;&amp; options[:callback]
           args = [options_for_javascript(hsh), options_for_effects(options)]
-      	  add &quot;animate(#{args.compact.join(',')})&quot;
+          add &quot;animate(#{args.compact.join(',')})&quot;
         end
 
         #This general mapping taken from the awesome JRails plugin
-      	@@effects = {
-      		:appear =&gt; {:function =&gt; 'fadeIn'},
-      		:blind_down =&gt; {:mode =&gt; 'blind', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'vertical'}},
-      		:blind_up =&gt; {:mode =&gt; 'blind', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'vertical'}},
-      		:blind_right =&gt; {:mode =&gt; 'blind', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'horizontal'}},
-      		:blind_left =&gt; {:mode =&gt; 'blind', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'horizontal'}},
-      		:bounce_in =&gt; {:mode =&gt; 'bounce', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
-      		:bounce_out =&gt; {:mode =&gt; 'bounce', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'up'}},
-      		:drop_in =&gt; {:mode =&gt; 'drop', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
-      		:drop_out =&gt; {:mode =&gt; 'drop', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'down'}},
-      		:fade =&gt; {:function =&gt; 'fadeOut'},
-      		:fold_in =&gt; {:mode =&gt; 'fold', :function =&gt; 'hide'},
-      		:fold_out =&gt; {:mode =&gt; 'fold', :function =&gt; 'show'},
-      		:grow =&gt; {:mode =&gt; 'scale', :function =&gt; 'show'},
-      		:highlight =&gt; {:mode =&gt; 'highlight', :function =&gt; 'show'},
-      		:puff =&gt; {:mode =&gt; 'puff', :function =&gt; 'hide'},
-      		:pulsate =&gt; {:mode =&gt; 'pulsate', :function =&gt; 'show'},
-      		:shake =&gt; {:mode =&gt; 'shake', :function =&gt; 'show'},
-      		:shrink =&gt; {:mode =&gt; 'scale', :function =&gt; 'hide'},
-      		:slide_down =&gt; {:mode =&gt; 'slide', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
-      		:slide_up =&gt; {:mode =&gt; 'slide', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'up'}},
-      		:slide_right =&gt; {:mode =&gt; 'slide', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'left'}},
-      		:slide_left =&gt; {:mode =&gt; 'slide', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'left'}},
-      		:squish =&gt; {:mode =&gt; 'scale', :function =&gt; 'hide', :options =&gt; {:origin =&gt; &quot;['top','left']&quot;}},
-      		:switch_on =&gt; {:mode =&gt; 'clip', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'vertical'}},
-      		:switch_off =&gt; {:mode =&gt; 'clip', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'vertical'}},
-      		:toggle_appear =&gt; {:function =&gt; 'fadeToggle'},
-      		:toggle_slide =&gt; {:mode =&gt; 'slide', :function =&gt; 'toggle', :options =&gt; {:direction =&gt; 'up'}},
-      		:toggle_blind =&gt; {:mode =&gt; 'blind', :function =&gt; 'toggle', :options =&gt; {:direction =&gt; 'vertical'}},
-      	}
+        @@effects = {
+          :appear =&gt; {:function =&gt; 'fadeIn'},
+          :blind_down =&gt; {:mode =&gt; 'blind', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'vertical'}},
+          :blind_up =&gt; {:mode =&gt; 'blind', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'vertical'}},
+          :blind_right =&gt; {:mode =&gt; 'blind', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'horizontal'}},
+          :blind_left =&gt; {:mode =&gt; 'blind', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'horizontal'}},
+          :bounce_in =&gt; {:mode =&gt; 'bounce', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
+          :bounce_out =&gt; {:mode =&gt; 'bounce', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'up'}},
+          :drop_in =&gt; {:mode =&gt; 'drop', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
+          :drop_out =&gt; {:mode =&gt; 'drop', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'down'}},
+          :fade =&gt; {:function =&gt; 'fadeOut'},
+          :fold_in =&gt; {:mode =&gt; 'fold', :function =&gt; 'hide'},
+          :fold_out =&gt; {:mode =&gt; 'fold', :function =&gt; 'show'},
+          :grow =&gt; {:mode =&gt; 'scale', :function =&gt; 'show'},
+          :highlight =&gt; {:mode =&gt; 'highlight', :function =&gt; 'show'},
+          :puff =&gt; {:mode =&gt; 'puff', :function =&gt; 'hide'},
+          :pulsate =&gt; {:mode =&gt; 'pulsate', :function =&gt; 'show'},
+          :shake =&gt; {:mode =&gt; 'shake', :function =&gt; 'show'},
+          :shrink =&gt; {:mode =&gt; 'scale', :function =&gt; 'hide'},
+          :slide_down =&gt; {:mode =&gt; 'slide', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'up'}},
+          :slide_up =&gt; {:mode =&gt; 'slide', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'up'}},
+          :slide_right =&gt; {:mode =&gt; 'slide', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'left'}},
+          :slide_left =&gt; {:mode =&gt; 'slide', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'left'}},
+          :squish =&gt; {:mode =&gt; 'scale', :function =&gt; 'hide', :options =&gt; {:origin =&gt; &quot;['top','left']&quot;}},
+          :switch_on =&gt; {:mode =&gt; 'clip', :function =&gt; 'show', :options =&gt; {:direction =&gt; 'vertical'}},
+          :switch_off =&gt; {:mode =&gt; 'clip', :function =&gt; 'hide', :options =&gt; {:direction =&gt; 'vertical'}},
+          :toggle_appear =&gt; {:function =&gt; 'fadeToggle'},
+          :toggle_slide =&gt; {:mode =&gt; 'slide', :function =&gt; 'toggle', :options =&gt; {:direction =&gt; 'up'}},
+          :toggle_blind =&gt; {:mode =&gt; 'blind', :function =&gt; 'toggle', :options =&gt; {:direction =&gt; 'vertical'}},
+        }
 
         #custom effects. 'name' corresponds to the keys of the hash above
         def effect(name, options = nil)
@@ -463,17 +463,17 @@ module Mack
         # goes to its href url) isn't done.
         # This can also be used in conjunction with trigger to make and call custom events. 
         def peep(event_name, options = {}, &amp;block)
-      	  add &quot;bind('#{event_name}', #{event_function(options[:prevent_default], &amp;block)})&quot;
+          add &quot;bind('#{event_name}', #{event_function(options[:prevent_default], &amp;block)})&quot;
         end
         
         #takes away any event listeners on the 'event_name' event fot the selected elements
-      	def stop_peeping(event_name)
-      	  add &quot;unbind('#{event_name}')&quot;
+        def stop_peeping(event_name)
+          add &quot;unbind('#{event_name}')&quot;
         end
         
         # triggers the 'event_name' event on the selected elements.
-      	def trigger(event_name)
-      	  add &quot;trigger('#{event_name}')&quot;
+        def trigger(event_name)
+          add &quot;trigger('#{event_name}')&quot;
         end
 
 
@@ -552,12 +552,12 @@ module Mack
           if remote_options || block_given?
             func =  Mack::JavaScript::Function.new(session_id, 'ev', 'ui')
             if remote_options
-    					remote_options[:with] ||= &quot;'id=' + $(ui.draggable).attr('id')&quot;
-    					func &lt;&lt; Mack::JavaScript::ScriptGenerator.new(session_id).ajax(remote_options)
-    				end
-    				func.body(&amp;block) if block_given?
-    				options.merge!(:drop =&gt; func)
-  				end
+              remote_options[:with] ||= &quot;'id=' + $(ui.draggable).attr('id')&quot;
+              func &lt;&lt; Mack::JavaScript::ScriptGenerator.new(session_id).ajax(remote_options)
+            end
+            func.body(&amp;block) if block_given?
+            options.merge!(:drop =&gt; func)
+          end
           add &quot;droppable(#{drag_and_drop_options(options)})&quot;
         end
 </diff>
      <filename>mack-javascript/lib/mack-javascript/helpers/jquery_helper.rb</filename>
    </modified>
    <modified>
      <diff>@@ -161,6 +161,10 @@ module Mack
         @generator.&lt;&lt;(&quot;.#{statement}&quot;, :add_to_last =&gt; true)
         self
       end
+      
+      def to_s
+        @generator.to_s
+      end
 
     end
     
@@ -186,12 +190,10 @@ module Mack
         to_s
       end
       
-      
       def to_s
         &quot;function(#{@arguments.join(', ')}){#{@generator.to_s}}&quot;
       end
       
-      
     end
   end
 end
\ No newline at end of file</diff>
      <filename>mack-javascript/lib/mack-javascript/helpers/script_generator.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>mack-javascript/spec/lib/generators/js_app_generator_spec.rb</filename>
    </removed>
    <removed>
      <filename>mack-javascript/spec/lib/helpers/jquery_helper_spec.rb</filename>
    </removed>
    <removed>
      <filename>mack-javascript/spec/lib/helpers/js_generator_spec.rb</filename>
    </removed>
    <removed>
      <filename>mack-javascript/spec/lib/helpers/prototype_helper_spec.rb</filename>
    </removed>
    <removed>
      <filename>mack-javascript/spec/lib/view_helpers/html_helpers_spec.rb</filename>
    </removed>
    <removed>
      <filename>mack-javascript/spec/lib/view_helpers/view_template_rjs.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>69deb62c0664022e14447826fb8e60b399a7fe08</id>
    </parent>
  </parents>
  <author>
    <name>Mark Bates</name>
    <email>mark@mackframework.com</email>
  </author>
  <url>http://github.com/markbates/mack-more/commit/12d95f4fc1a6376592b54d195242241c8630e56e</url>
  <id>12d95f4fc1a6376592b54d195242241c8630e56e</id>
  <committed-date>2009-01-27T19:12:21-08:00</committed-date>
  <authored-date>2009-01-27T19:12:21-08:00</authored-date>
  <message>Fixed mack-javascript isn't generating javascript [#246 state:resolved]</message>
  <tree>fbb5eb1b0b54e2becb8e2aa8c1f1ffac8b7114ab</tree>
  <committer>
    <name>Mark Bates</name>
    <email>mark@mackframework.com</email>
  </committer>
</commit>
