kurs 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+