elibri_onix_generator 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,3 @@
1
1
  module ElibriOnixGenerator
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
@@ -10,7 +10,7 @@ module Elibri
10
10
 
11
11
  SHORT_TAGS = YAML::load_file(File.dirname(__FILE__) + "/xml_tags.yml")
12
12
  DOC_ORDER = ["record_identifiers", "publishing_status", "product_form", "contributors", "titles", "series_memberships", "measurement",
13
- "sale_restrictions", "audience_range", "publisher_info", "extent", "edition", "languages", "epub_details",
13
+ "sale_restrictions", "territorial_rights", "audience_range", "publisher_info", "extent", "edition", "languages", "epub_details",
14
14
  "texts", "supporting_resources", "subjects", "elibri_extensions"]
15
15
  #"related_products", "supply_details"
16
16
 
@@ -328,19 +328,36 @@ module Elibri
328
328
  tag(:ProductComposition, '00') #lista 2 - Single-item retail product
329
329
 
330
330
  if product.product_form_onix_code
331
- comment_dictionary "Format produktu", :ProductFormCode, :indent => 10, :kind => [:onix_product_form, :onix_epub_details]
331
+ comment_dictionary "Format produktu", :ProductFormCode, :indent => 10, :kind => [:onix_product_form]
332
332
  tag(:ProductForm, product.product_form_onix_code)
333
333
  end
334
334
  end
335
335
 
336
336
 
337
337
  # @hidden_tags RecordReference NotificationType ProductIdentifier TitleDetail PublishingDetail ProductComposition
338
- # @title Zabezpieczenia e-booków
338
+ # @title E-booki
339
339
  # <strong>&lt;EpubTechnicalProtection&gt;</strong> Określa typ zabezpieczenia stosowanego przy publikacji e-booka.<br/>
340
340
  #
341
341
  # <strong>&lt;ProductFormDetail&gt;</strong> zawiera format w jakim rozprowadzany jest e-book.
342
342
  # Aktualnie może przyjąć wartości takie jak:
343
- # #{Elibri::ONIX::Dict::Release_3_0::ProductFormDetail::ALL.map(&:name).to_sentence(:last_word_connector => ' lub ')}
343
+ # #{Elibri::ONIX::Dict::Release_3_0::ProductFormDetail::ALL.map(&:name).to_sentence(:last_word_connector => ' lub ')}<br/>
344
+ #
345
+ # @render onix_epub_details_example
346
+ #
347
+ # Wydawca może również umieścić informacje o tym, czy pozwala na publikację fragmentu książki, a jeśli tak,
348
+ # to czy narzuca ograniczenie co do wielkości fragmentu (w ilości znaków albo procentowo). Ta informacja ma tylko wtedy
349
+ # znaczenie, gdy dystrybutor samodzielnie dokonuje konwersji, a tym samym tworzy ebooka z fragmentem publikacji.
350
+ # Wydawnictwa, które samodzielnie konwertują książki nie będą publikować tej informacji.<br/>
351
+ # @render onix_unlimited_book_sample_example
352
+ # @render onix_prohibited_book_sample_example
353
+ # @render onix_limited_book_sample_example
354
+ # <br/>
355
+ # Wydawnictwa podają też w systemie eLibri informację, czy prawo do sprzedaży ebook-a jest bezterminowe.
356
+ # W takim przypadku w opisie produktu wystąpi pusty tag <strong>&lt;elibri:SaleNotRestricted&gt;</strong> (ostatnie trzy przykłady).<br/><br/>
357
+ # Jeśli wydawca posiada licencję na określony czas, to w opisie produktu wystąpi tag
358
+ # <strong>&lt;elibri:SaleRestrictedTo&gt;</strong>, w którym będzie podana data wygaśnięcia licencji (w formacie YYYYMMDD).
359
+ # Przykład użycia w pierwszym przykładzie.
360
+ #
344
361
  def export_epub_details!(product)
345
362
  if product.product_form_detail_onix_codes.present? #lista 175
346
363
  comment_dictionary "Dostępne formaty produktu", :ProductFormDetail, :indent => 10, :kind => :onix_epub_details
@@ -348,7 +365,7 @@ module Elibri
348
365
  tag(:ProductFormDetail, onix_code)
349
366
  end
350
367
  end
351
-
368
+
352
369
  if product.digital?
353
370
  if product.epub_technical_protection
354
371
  comment_dictionary "Zabezpieczenie", :EpubTechnicalProtection, :indent => 10, :kind => :onix_epub_details
@@ -357,8 +374,7 @@ module Elibri
357
374
 
358
375
  if product.epub_fragment_info?
359
376
  tag(:EpubUsageConstraint) do
360
- comment_dictionary "Rodzaj ograniczeniai - w tym przypadku zawsze dotyczy dostępności fragmentu książki",
361
- :EpubUsageType, :indent => 12, :kind => :onix_epub_details
377
+ comment "Rodzaj ograniczenia - w tym przypadku zawsze dotyczy dostępności fragmentu książki", :indent => 12, :kind => :onix_epub_details
362
378
  tag(:EpubUsageType, Elibri::ONIX::Dict::Release_3_0::EpubUsageType::PREVIEW)
363
379
 
364
380
  comment_dictionary "Jaka jest decyzja wydawcy?", :EpubUsageStatus, :indent => 12, :kind => :onix_epub_details
@@ -464,11 +480,15 @@ module Elibri
464
480
  end
465
481
  end
466
482
 
467
- # @hidden_tags RecordReference NotificationType ProductIdentifier DescriptiveDetail
468
- # @title Terytorialne ograniczenia sprzedaży
483
+ # @hidden_tags RecordReference NotificationType ProductIdentifier DescriptiveDetail Publisher PublishingStatus
484
+ # @title Terytorialne ograniczenia sprzedaży.
485
+ # W tej chwili w systemie eLibri można zastrzec, że sprzedaż książek/ebooków jest ograniczona do terenu Polski,
486
+ # albo pozwolić na sprzedaż na całym świecie. Poniżej dwa przykłady, jeden dla wyłączości na terenie Polski, drugi
487
+ # dopuszczający sprzedaż na całym świecie. Informacja o ograniczeniu jest zawarta w obręcie <strong>&lt;SalesRights&gt;</strong>
469
488
  def export_territorial_rights!(product)
470
489
  tag(:SalesRights) do
471
- tag(:SalesRightsType, "01") #For sale with exclusive rights in the specified country/ies
490
+ comment "Typ restrykcji - sprzedaż tylko w wymienionym kraju, regionie, zawsze '01'", :kind => :onix_territorial_rights
491
+ tag(:SalesRightsType, "01")
472
492
  tag(:Territory) do
473
493
  if product.sale_restricted_to_poland?
474
494
  tag(:CountriesIncluded, "PL")
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elibri_onix_generator
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 4
10
- version: 0.1.4
9
+ - 5
10
+ version: 0.1.5
11
11
  platform: ruby
12
12
  authors:
13
13
  - "Marcin Urba\xC5\x84ski"