amperka 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/amperka/prodb.rb +25 -29
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YWRhNDZhMWVlODQ1YWM1MjYyYzdmY2M0N2FlMDA3OWQzNDRmY2RhMA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NGNkYjdlMDhmYWE5NzljN2VlMzJkY2E0NGIwNTZlZDM2YWY3YjlmMQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OTdkYzIzY2UwZTgxZjMyYTQ1N2JlZDI2ZTIwYmYwNGI4NGY4YWExZDBmYzlj
|
10
|
+
OWE2MWFjZjE4ZmY4MDRlOTE3Y2NlNTU3YjcyODJjYzYwY2QyMmIwODhiNzJh
|
11
|
+
NjU3YzlkN2VhOGVmOGU0MjdmOWNhMjNiZjg2YTRiZDVkOGIzYmI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MmIwZTk2NWQwZTY1MTU3ZDRhZDYyMzQxNmM0YjQ1MGY4MmI2ZjQ3YWMzMzJj
|
14
|
+
ZTBlZjgzYTVlNTNhYjQwNjMyZGQ5NGIzYTk5OWEyYTc2MzQ4OTJlZTRkNmUx
|
15
|
+
NDQ5YTQ4MmY5MDM3YTliMjcxNmQ2OTdkZTQwMDcyZDMzOTJiOGU=
|
data/lib/amperka/prodb.rb
CHANGED
@@ -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
|
-
|
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
|
-
|
16
|
-
products = []
|
17
|
-
product = {}
|
26
|
+
data = YAML.load file
|
18
27
|
|
19
|
-
|
28
|
+
data.each do |product|
|
29
|
+
valid = true
|
20
30
|
|
21
|
-
|
22
|
-
|
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
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
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.
|
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-
|
11
|
+
date: 2014-10-02 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Top Secret
|
14
14
|
email: artem@levenkov.org
|