apidae 1.3.6 → 1.3.9

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0f7955611d92ce6a8114bf59cffe2f7a4cd4e9b39c7ce2529bf891d3fc08c2ad
4
- data.tar.gz: 0abe8291d4f85db730f5942e3fd3504a2f649594ee56232604b9ff4ee59cd43f
3
+ metadata.gz: 66681e7a228d04a5be420fea1d27f363dab5f3abd1431cfcfc9ddc00e1931bc1
4
+ data.tar.gz: 6872e5a2de4d23d368b00c7bb01639113afc5b1133952ce793a12e7f372885f8
5
5
  SHA512:
6
- metadata.gz: 5c5ae0d93814c8d2245736db124dd635c6ba44963bc18592c6edae81e8f1609fe30dcc37408f80c53e1eadcccae04ca684fb73d537e0996e4aa88874b2870d61
7
- data.tar.gz: 4105a6f1f1de41ff52b873ba735633055995a220653b4a209325fd8e17fb8e56a946c1f06add44af7ed3efe0f5ac9a128b2d9aa0eb3b249628771e88972365e0
6
+ metadata.gz: 45e6cf33a4d259a15576d28936fa7f8fc917cf4538d00c8bfec03b45b0bdde200c6cd6d536884030d2fa9d86a2313ec9e63b2bd190ff65ec6e395a19c6310acc
7
+ data.tar.gz: 40040d7672373c353358d5cba94c10f296eb6d810868d698ad11f0090456c3897c33b2838a8aeeac974bb4465f7420f37a5c5eca09cf91d40572ef4c589735b1
@@ -113,7 +113,7 @@ module Apidae
113
113
  short_desc: node_value(data_hash, :descriptifCourt, *locales),
114
114
  long_desc: node_value(data_hash, :descriptifDetaille, *locales),
115
115
  theme_desc: data_hash[:descriptifsThematises].blank? ? {} : Hash[data_hash[:descriptifsThematises].map {|th| [node_id(th, :theme), node_value(th, :description, *locales)]}],
116
- private_desc: private_data.blank? ? {} : Hash[private_data.map {|d| [d[:nomTechnique], node_value(d, :descriptif, *locales)]}]
116
+ private_desc: private_data.blank? ? {} : Hash[private_data.map {|d| [d[:nomTechnique], (node_value(d, :descriptif, *locales).blank? ? {LOCALE_FR => d[:libelleFr]} : node_value(d, :descriptif, *locales))]}]
117
117
  }
118
118
  end
119
119
  end
@@ -253,6 +253,7 @@ module Apidae
253
253
  methods = rates_hash[:modesPaiement].blank? ? [] : rates_hash[:modesPaiement].map {|p| p[:id]}
254
254
  {
255
255
  rates_desc: desc, rates: values, payment_methods: methods,
256
+ tax_included: rates_hash[:taxeDeSejourIncluse].blank? ? nil : (rates_hash[:taxeDeSejourIncluse] == 'OUI'),
256
257
  rates_desc_mode: rates_hash[:tarifsEnClairGenerationMode] == 'AUTOMATIQUE' ? MODE_AUTO : MODE_MANUAL,
257
258
  includes: node_value(rates_hash, :leTarifComprend, *locales),
258
259
  excludes: node_value(rates_hash, :leTarifNeComprendPas, *locales),
@@ -275,6 +276,8 @@ module Apidae
275
276
  age_min: presta_hash[:ageMin], age_max: presta_hash[:ageMax]} : {}),
276
277
  classification: nodes_ids(data_hash[:classement], data_hash[:classementPrefectoral], data_hash[:classification]) +
277
278
  lists_ids(data_hash[:classementsGuides]) + lists_ids(data_hash[:classements]),
279
+ classification_date: data_hash[:dateClassement],
280
+ classification_ref: data_hash[:numeroClassement],
278
281
  labels: lists_ids(data_hash[:labels], data_hash[:labelsChartesQualite], prestations_hash[:labelsTourismeHandicap]) +
279
282
  (node_id(data_hash, :typeLabel) ? [node_id(data_hash, :typeLabel)] : []),
280
283
  chains: lists_ids(data_hash[:chaines]) + nodes_ids(data_hash[:chaineEtLabel]),
@@ -288,7 +291,10 @@ module Apidae
288
291
  extra: apidae_obj.apidae_type == Obj::SPA ? node_value(data_hash, :formuleHebergement, *locales) : node_value(prestations_hash, :complementAccueil, *locales),
289
292
  duration: apidae_obj.apidae_type == Obj::SPA ? {days: data_hash[:nombreJours], nights: data_hash[:nombreNuits]} : data_hash[:dureeSeance],
290
293
  certifications: data_hash[:agrements].blank? ? [] : data_hash[:agrements].map {|a| {id: a[:type][:id], identifier: a[:numero]}},
291
- business: business_hash
294
+ business: (business_hash || {}).except(:sallesEquipeesPour, :sallesEquipement, :sallesRestauration, :sallesReunion, :sallesHebergement),
295
+ business_equipments: lists_ids((business_hash || {})[:sallesEquipeesPour], (business_hash || {})[:sallesEquipement],
296
+ (business_hash || {})[:sallesRestauration], (business_hash || {})[:sallesHebergement]),
297
+ business_rooms: (business_hash || {})[:sallesReunion]
292
298
  }
293
299
  end
294
300
 
@@ -325,12 +331,14 @@ module Apidae
325
331
  def self.parse_booking(reservation_hash, visits_hash, *locales)
326
332
  booking_hash = {}
327
333
  if reservation_hash
328
- booking_hash[:booking_desc] = node_value(reservation_hash, :complement, *locales),
334
+ booking_hash[:booking_desc] = node_value(reservation_hash, :complement, *locales)
329
335
  booking_hash[:booking_entities] = reservation_hash[:organismes]
330
336
  end
331
337
  if visits_hash
332
338
  booking_hash[:visits_allowed] = visits_hash[:visitable] == true
333
339
  booking_hash[:visits_desc] = node_value(visits_hash, :complementVisite, *locales)
340
+ booking_hash[:visits_duration] = visits_hash[:dureeMoyenneVisiteIndividuelle]
341
+ booking_hash[:visits_services] = lists_ids(visits_hash[:prestationsVisitesGroupees]) + lists_ids(visits_hash[:prestationsVisitesIndividuelles])
334
342
  end
335
343
  booking_hash
336
344
  end
@@ -14,16 +14,17 @@ module Apidae
14
14
  store_accessor :description_data, :short_desc, :long_desc, :theme_desc, :private_desc
15
15
  store_accessor :pictures_data, :pictures
16
16
  store_accessor :attachments_data, :attachments
17
- store_accessor :type_data, :categories, :themes, :capacity, :classification, :labels, :chains, :area, :track,
18
- :tricky_sections, :products, :audience, :animals, :animals_desc, :extra, :duration, :certifications, :business
17
+ store_accessor :type_data, :categories, :themes, :capacity, :classification, :classification_date,
18
+ :classification_ref, :labels, :chains, :area, :track, :tricky_sections, :products, :audience, :animals,
19
+ :animals_desc, :extra, :duration, :certifications, :business, :business_equipments, :business_rooms
19
20
  store_accessor :entity_data, :entity_id, :entity_name, :service_provider_id, :is_service_provider, :legal
20
21
  store_accessor :contact_data, :telephone, :email, :website, :google, :facebook, :twitter, :yelp, :trip_advisor, :fax,
21
22
  :mobile_website, :shorty_url, :contacts
22
23
  store_accessor :location_data, :address, :place, :latitude, :longitude, :access, :territories, :environments, :altitude, :map_reference
23
24
  store_accessor :openings_data, :openings_desc, :openings_desc_mode, :openings, :time_periods, :openings_extra
24
- store_accessor :rates_data, :rates_desc, :rates_desc_mode, :rates, :payment_methods, :includes, :excludes, :rates_extra
25
+ store_accessor :rates_data, :rates_desc, :rates_desc_mode, :rates, :payment_methods, :includes, :excludes, :rates_extra, :tax_included
25
26
  store_accessor :service_data, :services, :equipments, :comfort, :activities, :challenged, :languages
26
- store_accessor :booking_data, :booking_desc, :booking_entities, :visits_allowed, :visits_desc
27
+ store_accessor :booking_data, :booking_desc, :booking_entities, :visits_allowed, :visits_desc, :visits_duration, :visits_services
27
28
  store_accessor :tags_data, :promo, :internal, :linked
28
29
  store_accessor :version_data, :versioned_fields
29
30
 
@@ -79,6 +80,7 @@ module Apidae
79
80
  STR = 'STRUCTURE'
80
81
  TER = 'TERRITOIRE'
81
82
 
83
+ # Todo : subtype for DEG shoud be :statutsExploitant (double check and fix in 1.2 and master)
82
84
  TYPES_DATA = {
83
85
  ACT => {node: :informationsActivite, subtype: :activiteType},
84
86
  COS => {node: :informationsCommerceEtService, subtype: :commerceEtServiceType},
@@ -1 +1 @@
1
- $apidae_cache = ActiveSupport::Cache::FileStore.new('cache/apidae', expires_in: 24.hours)
1
+ $apidae_cache = ActiveSupport::Cache::FileStore.new('cache/apidae', expires_in: ENV['APIDAE_CACHE_DURATION'] || 24.hours)
@@ -1,3 +1,3 @@
1
1
  module Apidae
2
- VERSION = "1.3.6"
2
+ VERSION = "1.3.9"
3
3
  end