apidae 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/models/apidae/export.rb +1 -0
- data/app/models/apidae/object.rb +23 -17
- data/lib/apidae/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 75ec8d84f77ede131aab6a98442f004fe54920a8
|
4
|
+
data.tar.gz: 740c16247d3e53be233d802cd26cadc7d14e6896
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 098cb9aa6df607f6cbd4a527d895006c75c0d4b0aac1ed682c10aca9f7142209df0986680d45fb3de153f0b06ba550172ba0381fd86a437454b32017b27c9f6a
|
7
|
+
data.tar.gz: c02948e3b352d5b09fe2ad90df543e2c7aa486bc4e9179949fa66e235284303118839dac06c2d454ca63d48e8d74dd9a0bced19907594aa44def59a98f193cf0
|
data/app/models/apidae/export.rb
CHANGED
data/app/models/apidae/object.rb
CHANGED
@@ -8,14 +8,14 @@ module Apidae
|
|
8
8
|
|
9
9
|
store_accessor :pictures_data, :pictures
|
10
10
|
store_accessor :attachments_data, :attachments
|
11
|
-
store_accessor :type_data, :categories, :themes, :capacity, :classification, :labels, :chains
|
11
|
+
store_accessor :type_data, :categories, :themes, :capacity, :classification, :labels, :chains, :area, :track
|
12
12
|
store_accessor :entity_data, :entity_id, :entity_name
|
13
13
|
store_accessor :contact, :telephone, :email, :website
|
14
|
-
store_accessor :address, :address_fields
|
14
|
+
store_accessor :address, :address_fields, :place
|
15
15
|
store_accessor :openings_data, :openings_desc, :openings
|
16
16
|
store_accessor :rates_data, :rates_desc, :rates, :payment_methods
|
17
17
|
store_accessor :service_data, :services, :equipments, :comfort, :activities
|
18
|
-
store_accessor :tags_data, :
|
18
|
+
store_accessor :tags_data, :promo, :internal
|
19
19
|
|
20
20
|
ACT = 'ACTIVITE'
|
21
21
|
COS = 'COMMERCE_ET_SERVICE'
|
@@ -70,14 +70,14 @@ module Apidae
|
|
70
70
|
apidae_obj.short_desc = node_value(object_data[:presentation], :descriptifCourt)
|
71
71
|
apidae_obj.long_desc = node_value(object_data[:presentation], :descriptifDetaille)
|
72
72
|
apidae_obj.contact = contact(object_data[:informations])
|
73
|
-
apidae_obj.address = address(object_data[:localisation][:adresse])
|
73
|
+
apidae_obj.address = address(object_data[:localisation][:adresse], object_data[type_fields[:node]])
|
74
74
|
apidae_obj.town = town(object_data[:localisation][:adresse])
|
75
75
|
apidae_obj.latitude = latitude(object_data[:localisation])
|
76
76
|
apidae_obj.longitude = longitude(object_data[:localisation])
|
77
77
|
apidae_obj.openings_data = parse_openings(object_data[:ouverture])
|
78
78
|
apidae_obj.rates_data = parse_rates(object_data[:descriptionTarif])
|
79
79
|
apidae_obj.reservation = parse_reservation(object_data[:reservation])
|
80
|
-
apidae_obj.type_data = parse_type_data(object_data[type_fields[:node]], object_data[:prestations])
|
80
|
+
apidae_obj.type_data = parse_type_data(object_data[:type], object_data[type_fields[:node]], object_data[:prestations])
|
81
81
|
apidae_obj.pictures_data = pictures_urls(object_data[:illustrations])
|
82
82
|
apidae_obj.attachments_data = attachments_urls(object_data[:multimedias])
|
83
83
|
apidae_obj.entity_data = entity_fields(object_data[:informations])
|
@@ -121,25 +121,28 @@ module Apidae
|
|
121
121
|
contact_entries.each do |c|
|
122
122
|
case c[:type][:id]
|
123
123
|
when PHONE
|
124
|
-
contact_details[:telephone]
|
124
|
+
contact_details[:telephone] ||= []
|
125
|
+
contact_details[:telephone] << c[:coordonnees][:fr]
|
125
126
|
when EMAIL
|
126
|
-
contact_details[:email]
|
127
|
+
contact_details[:email] ||= []
|
128
|
+
contact_details[:email] << c[:coordonnees][:fr]
|
127
129
|
when WEBSITE
|
128
|
-
contact_details[:website]
|
130
|
+
contact_details[:website] ||= []
|
131
|
+
contact_details[:website] << c[:coordonnees][:fr]
|
129
132
|
else
|
130
133
|
end
|
131
134
|
end
|
132
135
|
contact_details
|
133
136
|
end
|
134
137
|
|
135
|
-
def self.address(address_hash)
|
138
|
+
def self.address(address_hash, type_data_hash)
|
136
139
|
computed_address = []
|
137
140
|
unless address_hash.blank?
|
138
141
|
computed_address << address_hash[:adresse1] unless address_hash[:adresse1].blank?
|
139
142
|
computed_address << address_hash[:adresse2] unless address_hash[:adresse2].blank?
|
140
143
|
computed_address << address_hash[:adresse3] unless address_hash[:adresse3].blank?
|
141
144
|
end
|
142
|
-
{address_fields: computed_address}
|
145
|
+
{address_fields: computed_address, place: type_data_hash[:nomLieu]}
|
143
146
|
end
|
144
147
|
|
145
148
|
def self.town(address_hash = {})
|
@@ -175,15 +178,18 @@ module Apidae
|
|
175
178
|
end
|
176
179
|
end
|
177
180
|
|
178
|
-
def self.parse_type_data(data_hash, prestations_hash)
|
181
|
+
def self.parse_type_data(object_type, data_hash, prestations_hash)
|
179
182
|
if data_hash
|
180
183
|
{
|
181
184
|
categories: lists_ids(data_hash[:categories]),
|
182
185
|
themes: lists_ids(data_hash[:themes]),
|
183
186
|
capacity: data_hash[:capacite],
|
184
|
-
classification: nodes_ids(data_hash[:classement], data_hash[:classementPrefectoral])
|
187
|
+
classification: nodes_ids(data_hash[:classement], data_hash[:classementPrefectoral], data_hash[:classification]) +
|
188
|
+
lists_ids(data_hash[:classementsGuides]),
|
185
189
|
labels: lists_ids(data_hash[:labels], prestations_hash[:labelsTourismeHandicap]),
|
186
|
-
chains: lists_ids(data_hash[:chaines]) + nodes_ids(data_hash[:chaineEtLabel])
|
190
|
+
chains: lists_ids(data_hash[:chaines]) + nodes_ids(data_hash[:chaineEtLabel]),
|
191
|
+
area: object_type == DOS ? data_hash.except(:classification) : nil,
|
192
|
+
track: object_type == EQU ? data_hash[:itineraire] : nil
|
187
193
|
}
|
188
194
|
end
|
189
195
|
end
|
@@ -200,14 +206,14 @@ module Apidae
|
|
200
206
|
end
|
201
207
|
|
202
208
|
def self.parse_tags_data(pres_data_hash, crit_data_hash)
|
203
|
-
tags =
|
209
|
+
tags = {}
|
204
210
|
if pres_data_hash
|
205
|
-
tags
|
211
|
+
tags[:promo] = lists_ids(pres_data_hash[:typologiesPromoSitra])
|
206
212
|
end
|
207
213
|
unless crit_data_hash.blank?
|
208
|
-
tags
|
214
|
+
tags[:internal] = crit_data_hash.map {|c| c[:id]}
|
209
215
|
end
|
210
|
-
|
216
|
+
tags
|
211
217
|
end
|
212
218
|
|
213
219
|
def self.parse_reservation(reservation_hash)
|
data/lib/apidae/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: apidae
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jean-Baptiste Vilain
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-04-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|