]> git.cworth.org Git - sup/commitdiff
to: tab completion also loads in the 10 most recent correspondents' email addresses
authorwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Fri, 14 Sep 2007 01:47:43 +0000 (01:47 +0000)
committerwmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Fri, 14 Sep 2007 01:47:43 +0000 (01:47 +0000)
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@567 5c8cc53c-5e98-4d25-b20a-d8db53a31250

lib/sup/buffer.rb
lib/sup/index.rb

index e23507079864fdd4c747e3524810b0b4790652f2..3a696824a444873870c72c723fbb5be8c856e22d 100644 (file)
@@ -422,10 +422,14 @@ class BufferManager
   def ask_for_contacts domain, question, default_contacts=[]
     default = default_contacts.map { |s| s.to_s }.join(" ")
     default += " " unless default.empty?
+    
+    recent = Index.load_contacts(AccountManager.user_emails, :num => 10).map { |c| [c.longname, c.email] }
+    contacts = ContactManager.contacts.map { |c| [ContactManager.alias_for(c), c.longname, c.email] }
 
-    all_contacts = ContactManager.contacts.map { |c| [ContactManager.alias_for(c), c.longname, c.email] }.flatten.uniq.sort
+    Redwood::log "recent: #{recent.inspect}"
 
-    answer = BufferManager.ask_many_with_completions domain, question, all_contacts, default, /\s*,\s*/
+    completions = (recent + contacts).flatten.uniq.sort
+    answer = BufferManager.ask_many_with_completions domain, question, completions, default, /\s*,\s*/
 
     if answer
       answer.split_on_commas.map { |x| ContactManager.contact_for(x.downcase) || PersonManager.person_for(x) }
index cb89abf8b89215188fa021efc7d58370b0297581..46e6d6e97853b5a1105f12fda1f19af345bcccf1 100644 (file)
@@ -342,7 +342,7 @@ EOS
     num = h[:num] || 20
     @index.search_each(q, :sort => "date DESC", :limit => :all) do |docid, score|
       break if contacts.size >= num
-      #Redwood::log "got message with to: #{@index[docid][:to].inspect} and from: #{@index[docid][:from].inspect}"
+      #Redwood::log "got message #{docid} to: #{@index[docid][:to].inspect} and from: #{@index[docid][:from].inspect}"
       f = @index[docid][:from]
       t = @index[docid][:to]