apidae 0.3.2 → 0.3.3
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.
- 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
|