Module: Brreg

Defined in:
lib/brreg.rb,
lib/brreg/version.rb

Constant Summary collapse

BrregURI =
'https://hotell.difi.no/api/json/brreg/enhetsregisteret'
VERSION =
"0.4.2"

Class Method Summary collapse

Class Method Details

.find(query) ⇒ Object



60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/brreg.rb', line 60

def self.find(query)
  puts "\n"
  puts "\e[32mTreff i Enhetsregisteret basert på søket '#{query}'\e[0m"
  puts "\n"
  res = self.get_json( { :query => query } )
  if res.is_a?(Net::HTTPSuccess)
    jsonres = JSON.parse(res.body)
    matches = jsonres['posts'].to_i
    if matches > 0
      if matches == 1
        puts "Fant 1 oppføring"
        Brreg.find_by_orgnr( jsonres['entries'].first['orgnr'] )
      else
        for entry in jsonres['entries']
          puts entry['orgnr'] + ' ' + entry['navn']
        end
      end
    else
      puts "Fant ingen oppføringer med navn #{query}"
    end
  end
end

.find_by_domain(domain) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/brreg.rb', line 42

def self.find_by_domain(domain)
  res = `whois #{domain}`
  res.force_encoding('BINARY').encode!('UTF-8', :invalid => :replace, :undef => :replace)
  if res.gsub('Id Number').first
    orgnr = /\Id Number..................:\s(\d{9})/
    if res.match(orgnr)
      Brreg.find_by_orgnr( res.scan(orgnr).first.first )
      puts "\nBasert på Whois fra domenet #{domain}"
    else
      puts "Domenet har ikke et vanlig orgnr."
    end
  elsif res.gsub('% No match').first
    puts "Domenet #{domain} er ikke registert"
  else
    puts "Ukjent svar fra Whois. Det er kun mulig å søke på .no domener."
  end
end

.find_by_orgnr(orgnr) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'lib/brreg.rb', line 7

def self.find_by_orgnr(orgnr)
  if !orgnr
    puts "Ugyldig verdi"
    return false
  else
    if orgnr.class == String
      orgnr = orgnr.gsub(/\D/, '')
      if orgnr.empty? || orgnr.length != 9
        puts "Ugyldig verdi"
        return false
      end
    end
  end
  res = get_json( { :orgnr => orgnr } )
  if res.is_a?(Net::HTTPSuccess)
    jsonres = JSON.parse(res.body)
    if jsonres['posts'].to_i > 0
      company = jsonres['entries'].first
      puts "\n"
      puts "\e[32mViser oppføring for orgnr #{orgnr}\e[0m"
      puts "\n"
      puts company['navn']
      puts company['forretningsadr']
      puts company['forradrpostnr'] + ' ' + company['forradrpoststed']
      if !company['postadresse'].empty?
        puts 'Postadresse:'
        puts company['postadresse']
        puts company['ppostnr'] + ' ' + company['ppoststed']
      end
    else
      puts "Fant ingen oppføring for #{orgnr}"
    end
  end
end

.versionObject



83
84
85
# File 'lib/brreg.rb', line 83

def self.version
  VERSION
end