Skip to content
Snippets Groups Projects
Commit 3450f718 authored by Henri-Damien LAURENT's avatar Henri-Damien LAURENT
Browse files

Merge branch 'hotline#183442_erreur_php_au_chargement_d_une_page_sur_les_exemplaires' into 'master'

hotline#183442 : OPAC : availability badge should not break when firstitem is...

See merge request !4798
parents d44f961e 883190c7
Branches
Tags
1 merge request!4798hotline#183442 : OPAC : availability badge should not break when firstitem is...
Pipeline #24720 passed with stage
in 47 minutes and 10 seconds
- correctif #183442 : PHP8.1 : Le Badge Disponibilité Exemplaire s'affiche sans erreur PHP
\ No newline at end of file
......@@ -732,8 +732,8 @@ class Class_Exemplaire extends Storm_Model_Abstract {
public function getILSItemsThreshold() : int {
return $this->hasIdIntBib()
? (int) $this->getIntBib()->getItemsThreshold()
return ($this->hasIdIntBib() && ($int_bib = $this->getIntBib()))
? (int) $int_bib->getItemsThreshold()
: 0;
}
......
......@@ -114,7 +114,7 @@ class TemplatesAvailabilityTest extends TemplatesAvailabilityTestCase {
class TemplatesAvailabilityByRelevanceTest extends TemplatesAvailabilityTestCase {
class TemplatesAvailabilityWithRelevanceTest extends TemplatesAvailabilityTestCase {
public function setUp() {
parent::setUp();
......@@ -152,7 +152,9 @@ class TemplatesAvailabilityByRelevanceTest extends TemplatesAvailabilityTestCase
ZendAfi_Auth::getInstance()->logUser($abonne);
$this->fixture(Class_Notice::class,
['id' => 10]);
['id' => 10,
'type_doc' => Class_TypeDoc::LIVRE,
'title' => 'Le grand Meaulne']);
$this->fixture(Class_Exemplaire::class,
['id' => 9,
......@@ -174,7 +176,7 @@ class TemplatesAvailabilityByRelevanceTest extends TemplatesAvailabilityTestCase
public function withRecordIdThreeShouldRenderAvailableBadge() {
Class_AdminVar::set('ENABLE_BOOKMARKABLE_LIBRARIES', 0);
$this->dispatch('noticeajax/availability/id/10');
$this->assertXPathContentContains('//span[@class="badge_tag badge_record_availability record_id_10 record_available text-left badge badge-success"][@data-record-id="10"]', 'Disponible');
$this->assertXPathContentContains('//span[@class="badge_tag badge_record_availability record_id_10 doctype_id_1 record_available text-left badge badge-success"][@data-record-id="10"]', 'Disponible');
}
......@@ -182,6 +184,16 @@ class TemplatesAvailabilityByRelevanceTest extends TemplatesAvailabilityTestCase
public function withRecordIdTenAndBookmarkedLibrariesReadyShouldRenderAvailableInMyLibraryBadge() {
Class_AdminVar::set('ENABLE_BOOKMARKABLE_LIBRARIES', 1);
$this->dispatch('noticeajax/availability/id/10');
$this->assertXPathContentContains('//span[@class="badge_tag badge_record_availability record_id_10 record_available text-left badge badge-success"]', utf8_encode('Disponible à Gland'));
$this->assertXPathContentContains('//span[@class="badge_tag badge_record_availability record_id_10 doctype_id_1 record_available text-left badge badge-success"]', utf8_encode('Disponible à Gland'));
}
/**
* @test
* @see https://forge.afi-sa.net/issues/183442 */
public function exemplaireAvailabilityBadgeWhenNoIntBibShouldNotThrowError() {
Class_IntBib::find(8)->delete();
$this->dispatch('noticeajax/availability/id/10');
$this->assertXPathContentContains('//span[@class="badge_tag badge_record_availability record_id_10 doctype_id_1 record_available text-left badge badge-success"][@data-record-id="10"]','Disponible');
}
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment