kurs 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/README.rdoc ADDED
@@ -0,0 +1,29 @@
1
+ = kurs
2
+
3
+ Ruby API za vrednosti valuta (za sada samo EUR, USD, CHF i GBP) po kursu (kupovnom, prodajnom i srednjem) domaćih banaka
4
+
5
+ == Instalacija
6
+
7
+ sudo gem install dejan-kurs --source http://gems.github.com
8
+
9
+ == Korišćenje
10
+
11
+ require "rubygems"
12
+ require "kurs"
13
+
14
+ # banke:
15
+ >> Kurs.lista.keys
16
+ => ["Banca Intesa", "Vojvođanska Banka", "Findomestic Banka", "Société Générale Banka", "Raiffeisen banka", "Meridian Bank", "Komercijalna banka", "Narodna Banka Srbije"]
17
+
18
+ # konvertovanje po podacima NBS
19
+ >> nbs = Kurs.lista['Narodna Banka Srbije']
20
+ => {"kupovni"=>{"CHF"=>62.5359, "EUR"=>94.6169, "USD"=>70.6465, "GBP"=>106.0371}, "datum"=>"08.05.2009.", "srednji"=>{"CHF"=>62.7242, "EUR"=>94.9017, "USD"=>70.8592, "GBP"=>106.3563}, "prodajni"=>{"CHF"=>62.9124, "EUR"=>95.1864, "USD"=>71.0717, "GBP"=>106.6754}}
21
+ >> (1500 * nbs['prodajni']['USD']) / nbs['kupovni']['EUR']
22
+ => 1126.72841743917
23
+
24
+ # datum
25
+ >> Kurs.lista['Raiffeisen banka']['datum']
26
+
27
+ == Autor
28
+
29
+ {Dejan Simic}[http://rors.org]
data/VERSION.yml ADDED
@@ -0,0 +1,5 @@
1
+ ---
2
+ :major: 1
3
+ :minor: 0
4
+ :patch: 2
5
+
data/lib/kurs.rb ADDED
@@ -0,0 +1,31 @@
1
+ require 'open-uri'
2
+ require 'hpricot'
3
+
4
+ class Kurs
5
+
6
+ def self.lista
7
+ @@kurs
8
+ end
9
+
10
+ def self.refresh
11
+ @@kurs = {}
12
+ %w{EUR USD CHF GBP}.each do |valuta|
13
+ doc = Hpricot(open("http://www.kursna-lista.com/kursne-liste-banaka-i-menjacnica?valuta=#{valuta}"))
14
+ (doc/'#curFullTable tr').each do |tr|
15
+ banka = (tr/'td:nth(0)').inner_text.gsub(/\s*a.d.|\s*Beograd|\s*Srbija/, '')
16
+ next if banka.empty? || banka =~ /Menja/
17
+ @@kurs[banka] ||= {}
18
+ @@kurs[banka]['kupovni'] ||= {}
19
+ @@kurs[banka]['srednji'] ||= {}
20
+ @@kurs[banka]['prodajni'] ||= {}
21
+ @@kurs[banka]['kupovni'][valuta] = (tr/'td:nth(1)').inner_text.to_f
22
+ @@kurs[banka]['srednji'][valuta] = (tr/'td:nth(2)').inner_text.to_f
23
+ @@kurs[banka]['prodajni'][valuta] = (tr/'td:nth(3)').inner_text.to_f
24
+ @@kurs[banka]['datum'] = (tr/'td:nth(5)').inner_text
25
+ end
26
+ end
27
+ end
28
+
29
+ # on load
30
+ refresh
31
+ end
data/test/kurs_test.rb ADDED
@@ -0,0 +1,5 @@
1
+ require File.dirname(__FILE__) + '/test_helper'
2
+
3
+ class KursTest < Test::Unit::TestCase
4
+
5
+ end
@@ -0,0 +1,9 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'rr'
4
+
5
+ require File.dirname(__FILE__) + '/../lib/kurs'
6
+
7
+ class Test::Unit::TestCase
8
+ include RR::Adapters::TestUnit
9
+ end
metadata ADDED
@@ -0,0 +1,69 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kurs
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Dejan Simic
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-05-10 00:00:00 +02:00
13
+ default_executable:
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: hpricot
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description: Ruby API for converting currency using official exchange rate list of National Bank Of Serbia
26
+ email: desimic@gmail.com
27
+ executables: []
28
+
29
+ extensions: []
30
+
31
+ extra_rdoc_files: []
32
+
33
+ files:
34
+ - README.rdoc
35
+ - VERSION.yml
36
+ - lib/kurs.rb
37
+ - test/kurs_test.rb
38
+ - test/test_helper.rb
39
+ has_rdoc: true
40
+ homepage: http://github.com/dejan/kurs
41
+ licenses: []
42
+
43
+ post_install_message:
44
+ rdoc_options:
45
+ - --inline-source
46
+ - --charset=UTF-8
47
+ require_paths:
48
+ - lib
49
+ required_ruby_version: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: "0"
54
+ version:
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - ">="
58
+ - !ruby/object:Gem::Version
59
+ version: "0"
60
+ version:
61
+ requirements: []
62
+
63
+ rubyforge_project:
64
+ rubygems_version: 1.3.5
65
+ signing_key:
66
+ specification_version: 2
67
+ summary: Ruby API for converting currency using official exchange rate list of National Bank Of Serbia
68
+ test_files: []
69
+