elibri_onix 0.5.9 → 0.5.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f7ff1ae7075744aafdb79d18947c90d4a37ae1dd087093dedd1afde70720b426
4
- data.tar.gz: 8dd4634354067aabb96eab63eda2d368445f680da205bbed1286681f8159f43f
3
+ metadata.gz: f35ee1e0afa694d9272a217403c3488b2d35d14c28889f8c620786677bb2b000
4
+ data.tar.gz: e50e806f0567738b47de7cc6a61d9b17eec95f266d0e775be416b87ef2a7e565
5
5
  SHA512:
6
- metadata.gz: 47d7d19a8cd7ebc26bd42e216e28010b617c12067de43d2df15395b7f1c380c5c27d79abec2473e1bc64db5e5d56db60a9fec549eae2e76933b522744ff3d5e0
7
- data.tar.gz: c40cf4564716de2a527609148a084dd292101e046e8d3a27a98d9016d849bf56dae9ba2074da91b0ff43845c78085188c0df99fb1fe865ad7bf68f278d6d9dde
6
+ metadata.gz: 29bca94cd3b107116505511104fd14d6c2d8efa278862788e97f67cb1460e247827a54436058a375280e027ca28dce5de1d918c14ee063f4315f8d357b8d33db
7
+ data.tar.gz: eafe7a05a5c8fae9ce0af84619822cf8d1733fecbb44a3a31d1b3f87e0cc8a3c16166faca177a57b701f9994bea37ef68beeef9a921f69f3b59ed9abf9df1cbf
@@ -69,6 +69,9 @@ module Elibri
69
69
  #:nodoc:
70
70
  attr_reader :unnamed_persons
71
71
 
72
+ attr_reader :corporate_name
73
+ attr_reader :corporate_name_inverted
74
+
72
75
  #reprezentacja danych w xml-u
73
76
  attr_reader :to_xml
74
77
 
@@ -87,6 +90,8 @@ module Elibri
87
90
  @names_after_key = data.at_css('NamesAfterKey').try(:text)
88
91
  @biographical_note = data.at_css('BiographicalNote').try(:text)
89
92
  @unnamed_persons = data.at_css('UnnamedPersons').try(:text)
93
+ @corporate_name = data.at_css('CorporateName').try(:text)
94
+ @corporate_name_inverted = data.at_css('CorporateNameInverted').try(:text)
90
95
  set_eid(data)
91
96
  set_datestamp(data)
92
97
  end
@@ -5,23 +5,23 @@ module Elibri
5
5
  module Release_3_0
6
6
 
7
7
  class Language
8
-
8
+
9
9
  #from ONIX documentation:
10
10
  #An optional and repeatable group of data elements which together represent a language, and specify its role and,
11
11
  #where required, whether it is a country variant.
12
-
12
+
13
13
  include Inspector
14
14
 
15
15
  #:nodoc:
16
16
  ATTRIBUTES = [
17
17
  :role, :code, :role_name, :language
18
18
  ]
19
-
19
+
20
20
  #:nodoc:
21
21
  RELATIONS = [
22
22
  :inspect_include_fields
23
23
  ]
24
-
24
+
25
25
  #:doc:
26
26
  #kod onix roli, np. '01'
27
27
  #pełna lista ról: https://github.com/elibri/elibri_onix_dict/blob/master/lib/elibri_onix_dict/onix_3_0/serialized/LanguageRole.yml
@@ -33,7 +33,7 @@ module Elibri
33
33
 
34
34
  #reprezentacja w xml
35
35
  attr_reader :to_xml
36
-
36
+
37
37
  def initialize(data)
38
38
  @to_xml = data.to_s
39
39
  @role = data.at_css('LanguageRole').try(:text)
@@ -44,10 +44,12 @@ module Elibri
44
44
  def role_name
45
45
  Elibri::ONIX::Dict::Release_3_0::LanguageRole.find_by_onix_code(@role).const_name.downcase
46
46
  end
47
-
47
+
48
48
  #język, np. 'polski'
49
49
  def language
50
- Elibri::ONIX::Dict::Release_3_0::LanguageCode.find_by_onix_code(@code).name(:pl).downcase
50
+ Elibri::ONIX::Dict::Release_3_0::LanguageCode.find_by_onix_code(@code).name(:pl).downcase rescue nil
51
+ rescue
52
+
51
53
  end
52
54
 
53
55
  def inspect_include_fields
@@ -19,7 +19,9 @@ module Elibri
19
19
  :publisher, :product_form, :no_contributor, :edition_statement, :edition_type_onix_code, :number_of_illustrations, :publishing_status,
20
20
  :publishing_date, :premiere, :front_cover, :series_names, :city_of_publication,
21
21
  :preview_exists, :short_description, :sale_restricted_to_poland,
22
- :technical_protection_onix_code, :unlimited_licence, :hyphenated_isbn, :preorder_embargo_date, :additional_trade_information
22
+ :technical_protection_onix_code, :unlimited_licence, :hyphenated_isbn, :preorder_embargo_date, :additional_trade_information,
23
+ :number_of_pieces, :players_number_from, :players_number_to, :playing_time_from, :playing_time_to
24
+
23
25
  ]
24
26
 
25
27
  #:nodoc:
@@ -190,6 +192,21 @@ module Elibri
190
192
  #dodatkowa informacja handlowa
191
193
  attr_reader :additional_trade_information
192
194
 
195
+ #ilość elementów (puzzle, gry planszowe)
196
+ attr_reader :number_of_pieces
197
+
198
+ #min. ilość graczy - gry planszowe
199
+ attr_reader :players_number_from
200
+
201
+ #max. ilość graczy - gry planszowe
202
+ attr_reader :players_number_to
203
+
204
+ #min. czas gry - gry planszowe
205
+ attr_reader :playing_time_from
206
+
207
+ #max. czas gry - gry planszowe
208
+ attr_reader :playing_time_to
209
+
193
210
  #:nodoc:
194
211
  attr_reader :text_contents
195
212
  attr_reader :file_size
@@ -286,6 +303,7 @@ module Elibri
286
303
  @preview_exists = @supporting_resources.find { |sr| sr.content_type_name == "widget" && sr.link =~ /p.elibri.com.pl/ }.present?
287
304
  end
288
305
 
306
+ product_form_features_setup(data.css("ProductFormFeature"))
289
307
 
290
308
  publishing_details_setup(data.at_css('PublishingDetail')) if data.at_css('PublishingDetail')
291
309
  licence_information_setup(data)
@@ -329,6 +347,23 @@ module Elibri
329
347
  end
330
348
  end
331
349
 
350
+ def product_form_features_setup(data)
351
+ data.each do |feature|
352
+ ftype = feature.at_css("ProductFormFeatureType").inner_text
353
+ v1, v2 = feature.at_css("ProductFormFeatureValue, ProductFormFeatureDescription").inner_text.split("-").map(&:to_i)
354
+
355
+ if ftype == Elibri::ONIX::Dict::Release_3_0::ProductFormFeatureType::NUMBER_OF_GAME_PIECES
356
+ @number_of_pieces = v1
357
+ elsif ftype == Elibri::ONIX::Dict::Release_3_0::ProductFormFeatureType::GAME_PLAYERS
358
+ @players_number_from = v1
359
+ @players_number_to = v2
360
+ elsif ftype == Elibri::ONIX::Dict::Release_3_0::ProductFormFeatureType::GAME_PLAY_TIME
361
+ @playing_time_from = v1
362
+ @playing_time_to = v2
363
+ end
364
+ end
365
+ end
366
+
332
367
  def descriptive_details_setup(data)
333
368
  @product_composition = data.at_css('ProductComposition').try(:text)
334
369
  @product_form = data.at_css('ProductForm').try(:text)
@@ -465,6 +500,8 @@ module Elibri
465
500
  #data premiery, jako instancja Date (tylko wtedy, gdy dokładna data jest znana)
466
501
  def premiere
467
502
  Date.new(*parsed_publishing_date) if parsed_publishing_date.size == 3
503
+ rescue ArgumentError
504
+ nil
468
505
  end
469
506
 
470
507
  def related_products_record_references
@@ -2,7 +2,7 @@ module Elibri
2
2
  module ONIX
3
3
  z = $VERBOSE
4
4
  $VERBOSE = nil
5
- VERSION = "0.5.9"
5
+ VERSION = "0.5.12"
6
6
  Version = VERSION
7
7
  $VERBOSE = z
8
8
  end
@@ -0,0 +1,20 @@
1
+ require 'helper'
2
+
3
+ describe Elibri::ONIX::Release_3_0::ONIXMessage do
4
+
5
+ it "should be able to parse number of pieces info" do
6
+ product = load_fixture("onix_puzzle_example.xml")
7
+
8
+ assert_equal 25, product.number_of_pieces
9
+ end
10
+
11
+ it "should be able to parse playing time and number of players" do
12
+ product = load_fixture("onix_board_game_example.xml")
13
+
14
+ assert_equal 2, product.players_number_from
15
+ assert_equal 5, product.players_number_to
16
+ assert_equal 20, product.playing_time_from
17
+ assert_nil product.playing_time_to
18
+ end
19
+
20
+ end
@@ -0,0 +1,163 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ONIXMessage xmlns="http://ns.editeur.org/onix/3.0/reference" release="3.0">
3
+ <Header>
4
+ <Sender>
5
+ <SenderName>Elibri.com.pl</SenderName>
6
+ <ContactName>Tomasz Meka</ContactName>
7
+ <EmailAddress>kontakt@elibri.com.pl</EmailAddress>
8
+ </Sender>
9
+ <SentDateTime>20200118</SentDateTime>
10
+ </Header>
11
+ <Product>
12
+ <RecordReference>76843e73500beb04ddf8</RecordReference>
13
+ <!--NotificationType: CONFIRMED_ON_PUBLICATION--><NotificationType>03</NotificationType>
14
+ <ProductIdentifier>
15
+ <!--ProductIDType: EAN--><ProductIDType>03</ProductIDType>
16
+ <IDValue>5902719470332</IDValue>
17
+ </ProductIdentifier>
18
+ <DescriptiveDetail>
19
+ <!--ProductComposition: SINGLE_COMPONENT_RETAIL_PRODUCT--><ProductComposition>00</ProductComposition>
20
+ <!--ProductFormCode: GAME--><ProductForm>ZE</ProductForm>
21
+ <ProductFormFeature>
22
+ <!--ProductFormFeatureType: GAME_PLAYERS--><ProductFormFeatureType>23</ProductFormFeatureType>
23
+ <ProductFormFeatureDescription>2-5 graczy</ProductFormFeatureDescription>
24
+ </ProductFormFeature>
25
+ <ProductFormFeature>
26
+ <!--ProductFormFeatureType: GAME_PLAY_TIME--><ProductFormFeatureType>24</ProductFormFeatureType>
27
+ <ProductFormFeatureValue>20</ProductFormFeatureValue>
28
+ </ProductFormFeature>
29
+ <ProductClassification>
30
+ <!--ProductClassificationType: PKWIU--><ProductClassificationType>12</ProductClassificationType>
31
+ <ProductClassificationCode>32.40.39.0</ProductClassificationCode>
32
+ </ProductClassification>
33
+ <Collection>
34
+ <!--CollectionType: PUBLISHER_COLLECTION--><CollectionType>10</CollectionType>
35
+ <TitleDetail>
36
+ <!--TitleType: DISTINCTIVE_TITLE--><TitleType>01</TitleType>
37
+ <TitleElement>
38
+ <!--TitleElementLevel: COLLECTION--><TitleElementLevel>02</TitleElementLevel>
39
+ <TitleText>Gry planszowe</TitleText>
40
+ </TitleElement>
41
+ </TitleDetail>
42
+ </Collection>
43
+ <TitleDetail>
44
+ <!--TitleType: DISTINCTIVE_TITLE--><TitleType>01</TitleType>
45
+ <TitleElement>
46
+ <!--TitleElementLevel: PRODUCT--><TitleElementLevel>01</TitleElementLevel>
47
+ <TitleText>Jamniki</TitleText>
48
+ </TitleElement>
49
+ </TitleDetail>
50
+ <TitleDetail>
51
+ <!--TitleType: DISTRIBUTORS_TITLE--><TitleType>10</TitleType>
52
+ <TitleElement>
53
+ <!--TitleElementLevel: PRODUCT--><TitleElementLevel>01</TitleElementLevel>
54
+ <TitleText>JAMNIKI</TitleText>
55
+ </TitleElement>
56
+ </TitleDetail>
57
+ <Contributor sourcename="contributorid:201641" datestamp="20200118T2047">
58
+ <SequenceNumber>1</SequenceNumber>
59
+ <!--ContributorRole: AUTHOR--><ContributorRole>A01</ContributorRole>
60
+ <PersonName>David Short</PersonName>
61
+ <NamesBeforeKey>David</NamesBeforeKey>
62
+ <KeyNames>Short</KeyNames>
63
+ </Contributor>
64
+ <Contributor sourcename="contributorid:201642" datestamp="20200118T2047">
65
+ <SequenceNumber>2</SequenceNumber>
66
+ <!--ContributorRole: ILLUSTRATOR--><ContributorRole>A12</ContributorRole>
67
+ <PersonName>Maciej Szymanowicz</PersonName>
68
+ <NamesBeforeKey>Maciej</NamesBeforeKey>
69
+ <KeyNames>Szymanowicz</KeyNames>
70
+ </Contributor>
71
+ <Language>
72
+ <!--LanguageRole: LANGUAGE_OF_TEXT--><LanguageRole>01</LanguageRole>
73
+ <!--LanguageCode: Polish--><LanguageCode>pol</LanguageCode>
74
+ </Language>
75
+ <Subject>
76
+ <!--SubjectSchemeIdentifier: PROPRIETARY--><SubjectSchemeIdentifier>24</SubjectSchemeIdentifier>
77
+ <SubjectSchemeName>Nasza Księgarnia</SubjectSchemeName>
78
+ <SubjectCode>871</SubjectCode>
79
+ <SubjectHeadingText>Gry planszowe</SubjectHeadingText>
80
+ </Subject>
81
+ <AudienceRange>
82
+ <!--AudienceRangeQualifier: READING_AGE--><AudienceRangeQualifier>18</AudienceRangeQualifier>
83
+ <!--AudienceRangePrecision: FROM--><AudienceRangePrecision>03</AudienceRangePrecision>
84
+ <AudienceRangeValue>6</AudienceRangeValue>
85
+ </AudienceRange>
86
+ <AudienceRange>
87
+ <!--AudienceRangeQualifier: READING_AGE--><AudienceRangeQualifier>18</AudienceRangeQualifier>
88
+ <!--AudienceRangePrecision: TO--><AudienceRangePrecision>04</AudienceRangePrecision>
89
+ <AudienceRangeValue>106</AudienceRangeValue>
90
+ </AudienceRange>
91
+ </DescriptiveDetail>
92
+ <CollateralDetail>
93
+ <TextContent sourcename="textid:109999" datestamp="20200118T2047">
94
+ <!--OtherTextType: MAIN_DESCRIPTION--><TextType>03</TextType>
95
+ <!--ContentAudience: UNRESTRICTED--><ContentAudience>00</ContentAudience>
96
+ <Text>
97
+ <![CDATA[<p>
98
+ <strong>UBIERZ JAMNIKA W KUBRACZEK!</strong></p>
99
+ <p>
100
+ Podczas gry Twój jamnik będzie rósł, musisz więc ubierać go w coraz większy kubraczek. Staraj się, aby na kubraczku było jak najwięcej symboli kostek – zdobędziesz za nie punkty! Dodatkowe punkty dostaniesz za kolory kubraczka.</p>
101
+ ]]>
102
+ </Text>
103
+ </TextContent>
104
+ </CollateralDetail>
105
+ <PublishingDetail>
106
+ <Publisher>
107
+ <PublishingRole>01</PublishingRole>
108
+ <PublisherIdentifier>
109
+ <PublisherIDType>01</PublisherIDType>
110
+ <IDTypeName>ElibriPublisherCode</IDTypeName>
111
+ <IDValue>41</IDValue>
112
+ </PublisherIdentifier>
113
+ <PublisherName>Nasza Księgarnia</PublisherName>
114
+ </Publisher>
115
+ <CityOfPublication>Warszawa</CityOfPublication>
116
+ <!--PublishingStatusCode: ACTIVE--><PublishingStatus>04</PublishingStatus>
117
+ <PublishingDate>
118
+ <!--PublishingDateRole: PUBLICATION_DATE--><PublishingDateRole>01</PublishingDateRole>
119
+ <!--DateFormat: YYYYMMDD--><DateFormat>00</DateFormat>
120
+ <Date dateformat="00">20180919</Date>
121
+ </PublishingDate>
122
+ <PublishingDate>
123
+ <!--PublishingDateRole: PREORDER_EMBARGO_DATE--><PublishingDateRole>27</PublishingDateRole>
124
+ <!--DateFormat: YYYYMMDD--><DateFormat>00</DateFormat>
125
+ <Date dateformat="00">20180905</Date>
126
+ </PublishingDate>
127
+ <SalesRights>
128
+ <!--SalesRightsType: FOR_SALE_WITH_EXLUSIVE_RIGHTS--><SalesRightsType>01</SalesRightsType>
129
+ <Territory>
130
+ <CountriesIncluded>PL</CountriesIncluded>
131
+ </Territory>
132
+ </SalesRights>
133
+ </PublishingDetail>
134
+ <ProductSupply>
135
+ <SupplyDetail>
136
+ <Supplier>
137
+ <!--SupplierRole: PUB_TO_RET--><SupplierRole>01</SupplierRole>
138
+ <SupplierIdentifier>
139
+ <!--SupplierIDType: VAT_IDENTITY_NUMBER--><SupplierIDType>23</SupplierIDType>
140
+ <IDValue>PL5260205285</IDValue>
141
+ </SupplierIdentifier>
142
+ <SupplierName>Nasza Księgarnia</SupplierName>
143
+ </Supplier>
144
+ <!--ProductAvailabilityType: IN_STOCK--><ProductAvailability>21</ProductAvailability>
145
+ <Stock>
146
+ <OnHand>200</OnHand>
147
+ <!--Proximity: MORE_THAN--><Proximity>07</Proximity>
148
+ </Stock>
149
+ <PackQuantity>12</PackQuantity>
150
+ <Price>
151
+ <!--PriceTypeCode: RRP_WITH_TAX--><PriceType>02</PriceType>
152
+ <PriceAmount>59.9</PriceAmount>
153
+ <Tax>
154
+ <!--TaxType: VAT--><TaxType>01</TaxType>
155
+ <TaxRatePercent>23</TaxRatePercent>
156
+ </Tax>
157
+ <CurrencyCode>PLN</CurrencyCode>
158
+ <!--PricePrintedOnProduct: NO--><PrintedOnProduct>01</PrintedOnProduct>
159
+ </Price>
160
+ </SupplyDetail>
161
+ </ProductSupply>
162
+ </Product>
163
+ </ONIXMessage>
@@ -0,0 +1,148 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <ONIXMessage xmlns="http://ns.editeur.org/onix/3.0/reference" release="3.0">
3
+ <Header>
4
+ <Sender>
5
+ <SenderName>Elibri.com.pl</SenderName>
6
+ <ContactName>Tomasz Meka</ContactName>
7
+ <EmailAddress>kontakt@elibri.com.pl</EmailAddress>
8
+ </Sender>
9
+ <SentDateTime>20200118</SentDateTime>
10
+ </Header>
11
+ <Product>
12
+ <RecordReference>85b3ad798e01c3b5ee67</RecordReference>
13
+ <!--NotificationType: CONFIRMED_ON_PUBLICATION--><NotificationType>03</NotificationType>
14
+ <ProductIdentifier>
15
+ <!--ProductIDType: EAN--><ProductIDType>03</ProductIDType>
16
+ <IDValue>5902719471810</IDValue>
17
+ </ProductIdentifier>
18
+ <DescriptiveDetail>
19
+ <!--ProductComposition: SINGLE_COMPONENT_RETAIL_PRODUCT--><ProductComposition>00</ProductComposition>
20
+ <!--ProductFormCode: JIGSAW--><ProductForm>ZJ</ProductForm>
21
+ <ProductFormFeature>
22
+ <!--ProductFormFeatureType: NUMBER_OF_GAME_PIECES--><ProductFormFeatureType>22</ProductFormFeatureType>
23
+ <ProductFormFeatureValue>25</ProductFormFeatureValue>
24
+ </ProductFormFeature>
25
+ <ProductClassification>
26
+ <!--ProductClassificationType: PKWIU--><ProductClassificationType>12</ProductClassificationType>
27
+ <ProductClassificationCode>32.40.32</ProductClassificationCode>
28
+ </ProductClassification>
29
+ <Collection>
30
+ <!--CollectionType: PUBLISHER_COLLECTION--><CollectionType>10</CollectionType>
31
+ <TitleDetail>
32
+ <!--TitleType: DISTINCTIVE_TITLE--><TitleType>01</TitleType>
33
+ <TitleElement>
34
+ <!--TitleElementLevel: COLLECTION--><TitleElementLevel>02</TitleElementLevel>
35
+ <TitleText>Puzzle</TitleText>
36
+ </TitleElement>
37
+ </TitleDetail>
38
+ </Collection>
39
+ <TitleDetail>
40
+ <!--TitleType: DISTINCTIVE_TITLE--><TitleType>01</TitleType>
41
+ <TitleElement>
42
+ <!--TitleElementLevel: PRODUCT--><TitleElementLevel>01</TitleElementLevel>
43
+ <TitleText>Pucio. Puzzle: Co tu pasuje?</TitleText>
44
+ </TitleElement>
45
+ </TitleDetail>
46
+ <TitleDetail>
47
+ <!--TitleType: DISTRIBUTORS_TITLE--><TitleType>10</TitleType>
48
+ <TitleElement>
49
+ <!--TitleElementLevel: PRODUCT--><TitleElementLevel>01</TitleElementLevel>
50
+ <TitleText>PUCIO. PUZZLE: CO TU PASUJE?</TitleText>
51
+ </TitleElement>
52
+ </TitleDetail>
53
+ <Contributor sourcename="contributorid:210002" datestamp="20190116T1724">
54
+ <SequenceNumber>1</SequenceNumber>
55
+ <!--ContributorRole: AUTHOR--><ContributorRole>A01</ContributorRole>
56
+ <PersonName>Marta Galewska-Kustra</PersonName>
57
+ <NamesBeforeKey>Marta</NamesBeforeKey>
58
+ <KeyNames>Galewska-Kustra</KeyNames>
59
+ </Contributor>
60
+ <Contributor sourcename="contributorid:210003" datestamp="20190116T1724">
61
+ <SequenceNumber>2</SequenceNumber>
62
+ <!--ContributorRole: ILLUSTRATOR--><ContributorRole>A12</ContributorRole>
63
+ <PersonName>Joanna Kłos</PersonName>
64
+ <NamesBeforeKey>Joanna</NamesBeforeKey>
65
+ <KeyNames>Kłos</KeyNames>
66
+ </Contributor>
67
+ <Language>
68
+ <!--LanguageRole: LANGUAGE_OF_TEXT--><LanguageRole>01</LanguageRole>
69
+ <!--LanguageCode: Polish--><LanguageCode>pol</LanguageCode>
70
+ </Language>
71
+ </DescriptiveDetail>
72
+ <CollateralDetail>
73
+ <TextContent sourcename="textid:115723" datestamp="20190116T1724">
74
+ <!--OtherTextType: MAIN_DESCRIPTION--><TextType>03</TextType>
75
+ <!--ContentAudience: UNRESTRICTED--><ContentAudience>00</ContentAudience>
76
+ <Text>
77
+ <![CDATA[<p>
78
+ <strong>Wreszcie są! Długo wyczekiwane, mądre i piękne zabawki z PUCIEM!</strong></p>
79
+ <p>
80
+ Uwielbiany przez dzieci i rodziców bohater bestsellerowej serii Marty Galewskiej-Kustry, fenomenalnie ilustrowanej przez Joannę Kłos, w końcu wykracza poza karty książek i pojawia się także na puzzlach! Zapraszamy do wspólnej zabawy i nauki!</p>
81
+ <p>
82
+ Puzzle przeznaczone dla dzieci od 2 lat. Składają się z 5 obrazków głównych oraz 20 uzupełniających. Na obrazkach głównych jest Pucio w znanych dziecku codziennych sytuacjach (np. jedzenie posiłku, poranna toaleta, ubieranie się). Elementy uzupełniające przedstawiają pojedyncze obiekty zaprezentowane także na obrazku głównym (np. kanapka, szczoteczka do zębów, czapka). Dziecko ma się przyjrzeć obrazkowi głównemu, odnaleźć pasujące do niego elementy uzupełniające i dołączyć je do obrazka głównego.</p>
83
+ <p>
84
+ To na pozór proste zadanie wymaga skupienia uwagi na ilustracji, rozwija spostrzegawczość i mowę, ale przede wszystkim pobudza do myślenia. Mimo niedużej liczby elementów puzzle dają okazję do wielu zabaw o różnym stopniu trudności. </p>
85
+ <p>
86
+ Wyprodukowano w Polsce.</p>
87
+ ]]>
88
+ </Text>
89
+ </TextContent>
90
+ </CollateralDetail>
91
+ <PublishingDetail>
92
+ <Publisher>
93
+ <PublishingRole>01</PublishingRole>
94
+ <PublisherIdentifier>
95
+ <PublisherIDType>01</PublisherIDType>
96
+ <IDTypeName>ElibriPublisherCode</IDTypeName>
97
+ <IDValue>41</IDValue>
98
+ </PublisherIdentifier>
99
+ <PublisherName>Nasza Księgarnia</PublisherName>
100
+ </Publisher>
101
+ <CityOfPublication>Warszawa</CityOfPublication>
102
+ <!--PublishingStatusCode: ACTIVE--><PublishingStatus>04</PublishingStatus>
103
+ <PublishingDate>
104
+ <!--PublishingDateRole: PUBLICATION_DATE--><PublishingDateRole>01</PublishingDateRole>
105
+ <!--DateFormat: YYYYMMDD--><DateFormat>00</DateFormat>
106
+ <Date dateformat="00">20190227</Date>
107
+ </PublishingDate>
108
+ <PublishingDate>
109
+ <!--PublishingDateRole: PREORDER_EMBARGO_DATE--><PublishingDateRole>27</PublishingDateRole>
110
+ <!--DateFormat: YYYYMMDD--><DateFormat>00</DateFormat>
111
+ <Date dateformat="00">20190213</Date>
112
+ </PublishingDate>
113
+ <SalesRights>
114
+ <!--SalesRightsType: FOR_SALE_WITH_EXLUSIVE_RIGHTS--><SalesRightsType>01</SalesRightsType>
115
+ <Territory>
116
+ <CountriesIncluded>PL</CountriesIncluded>
117
+ </Territory>
118
+ </SalesRights>
119
+ </PublishingDetail>
120
+ <ProductSupply>
121
+ <SupplyDetail>
122
+ <Supplier>
123
+ <!--SupplierRole: PUB_TO_RET--><SupplierRole>01</SupplierRole>
124
+ <SupplierIdentifier>
125
+ <!--SupplierIDType: VAT_IDENTITY_NUMBER--><SupplierIDType>23</SupplierIDType>
126
+ <IDValue>PL5260205285</IDValue>
127
+ </SupplierIdentifier>
128
+ <SupplierName>Nasza Księgarnia</SupplierName>
129
+ </Supplier>
130
+ <!--ProductAvailabilityType: NOT_AVAILABLE--><ProductAvailability>40</ProductAvailability>
131
+ <Stock>
132
+ <OnHand>0</OnHand>
133
+ <!--Proximity: EXACTLY--><Proximity>03</Proximity>
134
+ </Stock>
135
+ <Price>
136
+ <!--PriceTypeCode: RRP_WITH_TAX--><PriceType>02</PriceType>
137
+ <PriceAmount>24.9</PriceAmount>
138
+ <Tax>
139
+ <!--TaxType: VAT--><TaxType>01</TaxType>
140
+ <TaxRatePercent>23</TaxRatePercent>
141
+ </Tax>
142
+ <CurrencyCode>PLN</CurrencyCode>
143
+ <!--PricePrintedOnProduct: NO--><PrintedOnProduct>01</PrintedOnProduct>
144
+ </Price>
145
+ </SupplyDetail>
146
+ </ProductSupply>
147
+ </Product>
148
+ </ONIXMessage>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elibri_onix
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.9
4
+ version: 0.5.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcin Urbanski
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-01-02 00:00:00.000000000 Z
12
+ date: 2020-01-18 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -217,6 +217,7 @@ files:
217
217
  - test/elibri_onix_message_attributes_test.rb
218
218
  - test/elibri_onix_release_3_0_onix_message_test.rb
219
219
  - test/elibri_onix_test.rb
220
+ - test/elibri_product_form_features_test.rb
220
221
  - test/elibri_product_form_test.rb
221
222
  - test/elibri_publisher_info_test.rb
222
223
  - test/elibri_publishing_status_test.rb
@@ -236,6 +237,7 @@ files:
236
237
  - test/fixtures/onix_audience_range_example.xml
237
238
  - test/fixtures/onix_audiobook_example.xml
238
239
  - test/fixtures/onix_audiobook_extent_example.xml
240
+ - test/fixtures/onix_board_game_example.xml
239
241
  - test/fixtures/onix_collective_work_example.xml
240
242
  - test/fixtures/onix_contributors_example.xml
241
243
  - test/fixtures/onix_ebook_extent_example.xml
@@ -252,6 +254,7 @@ files:
252
254
  - test/fixtures/onix_published_group_product_example.xml
253
255
  - test/fixtures/onix_published_product_example.xml
254
256
  - test/fixtures/onix_publisher_info_example.xml
257
+ - test/fixtures/onix_puzzle_example.xml
255
258
  - test/fixtures/onix_record_identifiers_example.xml
256
259
  - test/fixtures/onix_related_products_example.xml
257
260
  - test/fixtures/onix_removed_elibri_extensions.xml
@@ -284,7 +287,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
284
287
  - !ruby/object:Gem::Version
285
288
  version: '0'
286
289
  requirements: []
287
- rubygems_version: 3.0.3
290
+ rubyforge_project:
291
+ rubygems_version: 2.7.9
288
292
  signing_key:
289
293
  specification_version: 4
290
294
  summary: EDItEUR ONIX format subset implementation used in Elibri publication system