<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -161,11 +161,22 @@ module Knotfield
         #
         def extract_option_components( args = [] )
           options = args.extract_options!
-          raise &quot;Invalid options&quot; unless options[:by].blank? ^ options[:to].blank?
-          actions = [options.delete( :to ) || args].flatten.compact.uniq
-          roles_and_assocs = [options.delete( :by ) || args].flatten.compact.uniq
+          raise &quot;Invalid options&quot; if options[:by] &amp;&amp; options[:to]
+          if options[:by]
+            actions = args
+            actors = options.delete( :by )
+          elsif options[:to]
+            actions = options.delete( :to )
+            actors = args
+          else
+            actions = args
+            actors = nil
+          end
+          
+          actions = [actions].flatten.compact.uniq
+          actors = [actors].flatten.compact.uniq
   
-          return actions, roles_and_assocs, options
+          return actions, actors, options
         end
       
         #</diff>
      <filename>lib/acts_as_checkpoint.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e698c571450ce3e9c0a50f6cd7079f850836e45f</id>
    </parent>
  </parents>
  <author>
    <name>Brian Langenfeld</name>
    <email>blangenfeld@gmail.com</email>
  </author>
  <url>http://github.com/blangenfeld/acts_as_checkpoint/commit/ff6180dc00afc474fa1d54965c50ef046325aa6b</url>
  <id>ff6180dc00afc474fa1d54965c50ef046325aa6b</id>
  <committed-date>2008-08-14T00:22:06-07:00</committed-date>
  <authored-date>2008-08-14T00:22:06-07:00</authored-date>
  <message>model_allows no longer requires a :by or :to option.</message>
  <tree>54f56bae66c94efde5d6f1a765fe232aa0ef6f6a</tree>
  <committer>
    <name>Brian Langenfeld</name>
    <email>blangenfeld@gmail.com</email>
  </committer>
</commit>
