<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>vendor/mechanical_github/LICENSE</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/README</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/Rakefile</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/TODO</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/lib/mechanical_github.rb</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/lib/mechanical_github/repository.rb</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/lib/mechanical_github/session.rb</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/lib/mechanical_github/wiki.rb</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/script/destroy</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/script/generate</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/spec/mechanical_github_spec.rb</filename>
    </added>
    <added>
      <filename>vendor/mechanical_github/spec/spec_helper.rb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,14 +1,21 @@
 $: &lt;&lt; File.join(File.dirname(__FILE__), '..', '..', 'vendor', 'feed_me', 'lib')
+$: &lt;&lt; File.join(File.dirname(__FILE__), '..', '..', 'vendor', 'mechanical_github', 'lib')
 require 'rubygems'
 require 'open-uri'
 require 'dm-core'
 require 'feed_me'
+require 'mechanical_github'
 require 'set'
 
 module Seinfeld
   # Some of this is destined to be broken out into modules when support for
   # more services than just github is added.
   class User
+    class &lt;&lt; self
+      attr_accessor :github_login
+      attr_accessor :github_password
+    end
+
     include DataMapper::Resource
     property :id,             Integer, :serial =&gt; true
     property :login,          String, :unique =&gt; true
@@ -98,9 +105,14 @@ module Seinfeld
 
     def self.process_new_github_user(subject)
       login_name = subject.scan(/([\w\_\-]+) sent you a message/).first.to_s
-      user       = first(:login =&gt; login_name) unless login_name.size.zero?
-      if user || login_name.size.zero?
-        raise &quot;blam&quot;
+      return if login_name.size.zero?
+      if user = first(:login =&gt; login_name)
+        if github_login &amp;&amp; github_password
+          session = MechanicalGithub::Session.new
+          session.login github_login, github_password
+          session.send_message login_name, &quot;[CAN] You've already registered!&quot;, &quot;Thanks for your enthusiasm, but you've already registered for a Calendar About Nothing: http://calendaraboutnothing.com/~#{user.login}.&quot;
+        end
+        nil
       else
         user = new(:login =&gt; login_name)
         yield user if block_given?</diff>
      <filename>lib/seinfeld/models.rb</filename>
    </modified>
    <modified>
      <diff>@@ -14,16 +14,12 @@ module Seinfeld
     end
 
     it &quot;does not create a user from an invalid subject&quot; do
-      lambda do
-        User.process_new_github_user(&quot;elijah_snow wants to be your friend&quot;)
-      end.should raise_error
+      User.process_new_github_user(&quot;elijah_snow wants to be your friend&quot;).should be_nil
     end
 
     it &quot;does not create a duplicate user&quot; do
       User.create :login =&gt; 'elijah_snow'
-      lambda do
-        User.process_new_github_user(&quot;elijah_snow sent you a message&quot;)
-      end.should raise_error
+      User.process_new_github_user(&quot;elijah_snow sent you a message&quot;).should be_nil
     end
   end
 end
\ No newline at end of file</diff>
      <filename>spec/github_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>267311049922360032dad7b8f158b901dc07c86e</id>
    </parent>
  </parents>
  <author>
    <name>rick</name>
    <email>technoweenie@gmail.com</email>
  </author>
  <url>http://github.com/technoweenie/seinfeld/commit/ef260a50359ba1de0c5ffca550d11c0bc6da6dec</url>
  <id>ef260a50359ba1de0c5ffca550d11c0bc6da6dec</id>
  <committed-date>2008-10-05T19:14:27-07:00</committed-date>
  <authored-date>2008-10-05T19:14:27-07:00</authored-date>
  <message>add github message sending for errors</message>
  <tree>05ac7ef936aa91859dcd86f4fa1c5c67f6ed54d4</tree>
  <committer>
    <name>rick</name>
    <email>technoweenie@gmail.com</email>
  </committer>
</commit>
