amperka 0.1.0 → 0.1.1

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.
Files changed (3) hide show
  1. checksums.yaml +8 -8
  2. data/lib/amperka/prodb.rb +25 -29
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OGYwYjM1ZmQ0OWQ4Y2YzNDdjYWM0ZGZiODBkZmU5OGI1ZDJjNzNlZQ==
4
+ YWRhNDZhMWVlODQ1YWM1MjYyYzdmY2M0N2FlMDA3OWQzNDRmY2RhMA==
5
5
  data.tar.gz: !binary |-
6
- NzkwNzcwYzZjYWMxMTRjNzg2ODkzNTFiYWYzMDI0NGExZjhmNjA5OQ==
6
+ NGNkYjdlMDhmYWE5NzljN2VlMzJkY2E0NGIwNTZlZDM2YWY3YjlmMQ==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- MWRhOWEzZTZjN2FlZmI4Y2RkZDRmNzNlYzg2MzZiYWVhN2I2ODI1OTAxOTUw
10
- M2NjNWZiZDFjMDY0OTI2NTU1YWFkODZmOTU0ODg3YzJmODg4MDc4ODI1Yjdh
11
- NWEzMzBlZTJlYzU3YzI2ZWZmNGFlMTNmZmI0OTMxZTE2MGFjM2Y=
9
+ OTdkYzIzY2UwZTgxZjMyYTQ1N2JlZDI2ZTIwYmYwNGI4NGY4YWExZDBmYzlj
10
+ OWE2MWFjZjE4ZmY4MDRlOTE3Y2NlNTU3YjcyODJjYzYwY2QyMmIwODhiNzJh
11
+ NjU3YzlkN2VhOGVmOGU0MjdmOWNhMjNiZjg2YTRiZDVkOGIzYmI=
12
12
  data.tar.gz: !binary |-
13
- MjkxZDhmNmZjZTY2MjFhMDFmZmY2M2Y5NzU5ZmY0NGI2MTJmOGVlMTBjMGVm
14
- YmM0NDgxMWNkY2IyNjU2ZWRiZmFhZjVhZWU2ZDEzZGVlNTJkNGNjODhjMDgy
15
- YmY2MDZkZDA3NDRhNmNiODkyODY5N2M5ZjZmMzYxMTU5ZjdlMmI=
13
+ MmIwZTk2NWQwZTY1MTU3ZDRhZDYyMzQxNmM0YjQ1MGY4MmI2ZjQ3YWMzMzJj
14
+ ZTBlZjgzYTVlNTNhYjQwNjMyZGQ5NGIzYTk5OWEyYTc2MzQ4OTJlZTRkNmUx
15
+ NDQ5YTQ4MmY5MDM3YTliMjcxNmQ2OTdkZTQwMDcyZDMzOTJiOGU=
@@ -1,49 +1,45 @@
1
1
  #!/usr/bin/ruby19
2
2
  # encoding: UTF-8
3
3
 
4
+ require 'yaml'
5
+
6
+
4
7
  module Amperka
5
8
 
6
9
  class Products
7
10
 
8
11
  def self.load root
9
- # *TODO*
12
+ products = []
13
+ yamls = Dir.glob "#{root}/**/*.yaml"
14
+
15
+ yamls.each do |file|
16
+ products += load_file file
17
+ end
18
+
19
+ products
10
20
  end
11
21
 
12
22
  def self.load_file path
23
+ products = []
13
24
  file = IO.read path
14
25
 
15
- bdesc = nil
16
- products = []
17
- product = {}
26
+ data = YAML.load file
18
27
 
19
- lines = file.split "\n"
28
+ data.each do |product|
29
+ valid = true
20
30
 
21
- lines.each_with_index do |line, index|
22
- if /^\s*-\s*$/ =~ line
23
- products << product unless product.empty?
24
- product = {}
25
- bdesc = nil
26
- next
31
+ [ 'Название', 'Пермалинк', 'Кратко', 'Полно' ].each do |key|
32
+ valid = nil unless product.has_key? key
27
33
  end
28
34
 
29
- unless bdesc
30
- case line
31
- when /^\s+Название:\s*.*$/
32
- matcha = /^\s+Название:\s*(.*)\s*$/.match line
33
- product[:name] = matcha[1]
34
- when /^\s+Пермалинк:\s*.*$/
35
- matcha = /^\s+Пермалинк:\s*(.*)\s*$/.match line
36
- product[:permalink] = matcha[1]
37
- when /^\s+Кратко:\s*.*$/
38
- matcha = /^\s+Кратко:\s*(.*)\s*$/.match line
39
- product[:shortdesc] = matcha[1]
40
- when /^\s+Полно:\s*\|\s*$/
41
- product[:desc] = ''
42
- bdesc = true
43
- end
44
- else
45
- product[:desc] += line.sub(/^\s+/, '') + "\n"
46
- end
35
+ next unless valid
36
+
37
+ products << {
38
+ :name => product['Название'],
39
+ :permalink => product['Пермалинк'],
40
+ :shortdesc => product['Кратко'],
41
+ :desc => product['Полно']
42
+ }
47
43
  end
48
44
 
49
45
  products
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: amperka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Levenkov Artem
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-22 00:00:00.000000000 Z
11
+ date: 2014-10-02 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Top Secret
14
14
  email: artem@levenkov.org