diff --git a/VERSIONS_HOTLINE/98102 b/VERSIONS_HOTLINE/98102 new file mode 100644 index 0000000000000000000000000000000000000000..e22699b0b645bf65bffc80ca414cbc31b35b4cd1 --- /dev/null +++ b/VERSIONS_HOTLINE/98102 @@ -0,0 +1 @@ + - ticket #98102 : Catalogue OPAC : Ajout des résumés dans les Notices rattachées à des albums \ No newline at end of file diff --git a/library/Class/Indexation/PseudoNotice.php b/library/Class/Indexation/PseudoNotice.php index 01d9f4b5f614ed0c1e95b4950fb56e022e3fb38e..633124127173520f0880d78dd2ea21c0ffae1b2e 100644 --- a/library/Class/Indexation/PseudoNotice.php +++ b/library/Class/Indexation/PseudoNotice.php @@ -201,6 +201,7 @@ class Class_Indexation_PseudoNotice { '')) ->setTitres($indexation->getfullText($this->extractTitles())) ->setAuteurs($indexation->getfullText($authors)) + ->setResume($this->_datas["resume"]) ->setAlphaAuteur($indexation->alphaMaj(implode(' ', $this->extractAuthors()))) ->setOtherTerms($indexation->getfullText($this->extractOtherTerms())) ->setFacettes(implode(' ',$this->_getFacettes())) @@ -425,6 +426,8 @@ class Class_Indexation_PseudoNotice_Album extends Class_Indexation_PseudoNotice{ if ($poster = $this->_model->getPoster()) $this->_datas['url_image'] = $poster; + $this->_datas['resume'] = strip_tags($this->_datas['description']); + $model = $this->_model; $this->_datas['notes'] = $model->getNotesForPseudoNotice(); $this->_datas['created_at'] = $model->getCreatedAt(); diff --git a/tests/library/Class/Indexation/PseudoNoticeTest.php b/tests/library/Class/Indexation/PseudoNoticeTest.php index acacd8d89a4a40c62cabe45acb02684d768cff9c..a4b6374c42fcd82c7cc42f82c7284b044ed14c6f 100644 --- a/tests/library/Class/Indexation/PseudoNoticeTest.php +++ b/tests/library/Class/Indexation/PseudoNoticeTest.php @@ -428,6 +428,42 @@ class Class_Indexation_PseudoNoticeArticleTest } +/** + * @see http://forge.afi-sa.fr/issues/98102 + */ +class Class_Indexation_PseudoNoticeAlbumSummaryTest extends Class_Indexation_PseudoNoticeTestCase { + protected + $_storm_default_to_volatile = true, + $_album; + + public function setUp() { + parent::setUp(); + $this->_album = $this->fixture('Class_Album', + [ + 'id' => 45, + 'titre' => 'Ils ont refait le monde', + 'description'=> 'Mon texte de description', + 'sous_titre' => 'Le traite de Versailles', + 'annee'=> 2017, + 'notes' => 'a:8:{i:0;a:2:{s:5:"field";s:3:"210";s:4:"data";a:2:{i:0;a:2:{i:0;s:1:"c";i:1;s:19:"Editions Tallandier";}i:1;a:2:{i:0;s:1:"c";i:1;s:19:"Editions Tallandier";}}}i:1;a:2:{s:5:"field";s:3:"701";s:4:"data";a:1:{s:1:"a";s:24:"Jacques-Alain de Sédouy";}}i:2;a:2:{s:5:"field";s:2:"10";s:4:"data";a:1:{s:1:"a";s:13:"9791021028951";}}i:3;a:2:{s:5:"field";s:3:"856";s:4:"data";a:2:{s:1:"x";s:6:"poster";s:1:"a";s:81:"https://assets.edenlivres.fr/medias/c8/47e13cfde4723155a1c74873402957b23ca057.jpg";}}i:4;a:2:{s:5:"field";s:3:"856";s:4:"data";a:2:{s:1:"x";s:6:"poster";s:1:"a";s:90:"https://assets.edenlivres.fr/medias/c8/47e13cfde4723155a1c74873402957b23ca057.jpg?h=-&w=65";}}i:5;a:2:{s:5:"field";s:3:"856";s:4:"data";a:2:{s:1:"x";s:6:"poster";s:1:"a";s:91:"https://assets.edenlivres.fr/medias/c8/47e13cfde4723155a1c74873402957b23ca057.jpg?h=-&w=200";}}i:6;a:2:{s:5:"field";s:3:"856";s:4:"data";a:2:{s:1:"x";s:6:"poster";s:1:"a";s:92:"https://assets.edenlivres.fr/medias/c8/47e13cfde4723155a1c74873402957b23ca057.jpg?h=-&w=1000";}}i:7;a:2:{s:5:"field";s:3:"856";s:4:"data";a:2:{s:1:"x";s:12:"external_uri";s:1:"a";s:34:"https://www.edenlivres.fr/p/282139";}}}', + 'visible'=> True, + 'status' => Class_Album::STATUS_VALIDATED, + 'notice_id' => 258178 + ]) + ->setISBN('9782081234151312') + ; + + $this->_album->save(); + $this->_album->index(); + $this->_notice = Class_Notice::find(1); + } + + + /** @test */ + public function pseudoNoticeResumeShouldBeMonTexteDeDescription() { + $this->assertEquals('Mon texte de description',Class_Notice::find(1)->get_subfield('330','a')[0]); + } +} /** @see http://forge.afi-sa.fr/issues/72723 */