]> git.netwichtig.de Git - user/henk/code/ruby/rbot.git/blobdiff - data/rbot/plugins/iplookup.rb
Adapt to new auth system.
[user/henk/code/ruby/rbot.git] / data / rbot / plugins / iplookup.rb
index a3f8f952658723eb2c7ea7a9ef379b48d9c45daa..9da167b08291e4141354b2b3f693ff5027670978 100644 (file)
@@ -41,11 +41,11 @@ module ArinWhois
     end\r
     \r
     def location\r
-      "#{self['City']}, #{self['StateProv']}, #{self['Country']}"\r
+      [ self['City'], self['StateProv'], self['Country'] ].compact.join(', ')\r
     end\r
     \r
     def address\r
-      "#{self['Address']}, #{location}  #{self['PostalCode']}"\r
+      [ self['Address'], location, self['PostalCode'] ].compact.join(', ')\r
     end\r
     \r
   end\r
@@ -104,8 +104,8 @@ module ArinWhois
         result = Chunk.new\r
         \r
         chunk[0].scan(/([A-Za-z]+?):(.*)/).each do |tuple|\r
-          #puts tuple.inspect\r
-          result[tuple[0]] = tuple[1].strip\r
+          tuple[1].strip!\r
+          result[tuple[0]] = tuple[1].empty? ? nil : tuple[1]\r
         end\r
         \r
         result\r
@@ -190,8 +190,13 @@ class IPLookupPlugin < Plugin
   def iplookup(m, params)\r
     reply = ""\r
     if params[:domain]\r
-      ip = Resolv.getaddress(params[:domain])\r
-      reply += "(#{params[:domain]} = #{ip}) "\r
+      begin\r
+        ip = Resolv.getaddress(params[:domain])\r
+        reply += "#{params[:domain]} | "\r
+      rescue => e\r
+        m.reply "#{e.message}"\r
+        return\r
+      end\r
     else\r
       ip = params[:ip]\r
     end\r
@@ -216,7 +221,7 @@ plugin.map 'userip :user', :action => 'userip', :requirements => {:user => /\w+/
 \r
 if __FILE__ == $0\r
   include ArinWhois\r
-  data = open('whoiscgm.txt').read\r
+  data = open('whoistest.txt').read\r
   c = ArinWhoisParser.new data\r
   puts c.get_parsed_data.inspect\r
 end
\ No newline at end of file