Commit 5ab600c3 authored by Ghislain Loas's avatar Ghislain Loas

Merge branch 'origin-hotline' into hotline#71669_probleme_de_sso_pour_la_plateforme_le_kiosk

parents f10dee5f 3b1b132c
06/03/2018 - v7.12.1
- ticket #72329 : Menu vertical : correction de la compatibilité du menu à bascule avec le responsive.
- ticket #72344 : Explorateur de fichier : désactivation de la mauvaise vérification des noms de fichiers téléversé
- ticket #72325 : Correction de la lecture des ressources numériques via l'URL /bib-numerique/play-ressource
05/03/2018 - v7.12.00
- ticket #71664 : Accessibilité RGAA : remplacement de la visualisation en popup par l'ouverture dans un nouvel onglet.
- ticket #69826 : Compte abonné : possibilité d'enregistrer une recherche et d'être notifié par email des nouveautés liées à celle-ci.
- ticket #71921 : Affichage : amélioration du chargement du menu à bascule.
- ticket #71411 : Affichage : Rétrocompatibilité version 7.12 / 7.10
- ticket #71456 : Administration : suppression d'entrées de menu de bibliotheque numérique qui sont inutiles
- ticket #71409 : Administration : ajout des liens vers les vidéos dans la liste des fonctionnalités
- ticket #58111 : Administration : notification automatique des nouvelles fonctionnalités à la première connection d'un administrateur.
- ticket #71408 : Administration : mise en valeur des compteurs des menus assistance et fonctionalités.
- ticket #71412 : Intégrations cosmogramme : correction de la prise en compte des fichiers de suppressions d'exemplaires
- ticket #71715 : Explorateur de fichiers : ajout de la possiblité de rechercher des dossiers.
- ticket #71600 : Explorateur de fichiers : correction des liens de téléchargement d'images qui comportaient un espace dans le nom.
- ticket #71154 : Ressource numérique Dilicom : branchement de l'inspecteur gadget sur les albums PNB.
22/02/2018 - v7.11.21
- ticket #65371 : Affichage : correction de l'affichage des articles en mode mur / fluide sous Chrome
......
- ticket #71154 : Ressource numérique Dilicom : branchement de l'inspecteur gadget sur les albums PNB.
\ No newline at end of file
- ticket #58111 : Administration : notification automatique des nouvelles fonctionnalités à la première connection d'un administrateur.
\ No newline at end of file
- ticket #69826 : Compte abonné : possibilité d'enregistrer une recherche et d'être notifié par email des nouveautés liées à celle-ci.
- ticket #71408 : Administration : mise en valeur des compteurs des menus assistance et fonctionalités.
\ No newline at end of file
- ticket #71409 : Administration : ajout des liens vers les vidéos dans la liste des fonctionnalités
\ No newline at end of file
- ticket #71411 : Affichage : Rétrocompatibilité version 7.12 / 7.10
\ No newline at end of file
- ticket #71412 : Intégrations cosmogramme : correction de la prise en compte des fichiers de suppressions d'exemplaires
- ticket #71456 : Administration : suppression d'entrées de menu de bibliotheque numérique qui sont inutiles
\ No newline at end of file
- ticket #71600 : Explorateur de fichiers : correction des liens de téléchargement d'images qui comportaient un espace dans le nom.
\ No newline at end of file
- ticket #71664 : Accessibilité RGAA : remplacement de la visualisation en popup par l'ouverture dans un nouvel onglet.
- ticket #71715 : Explorateur de fichiers : ajout de la possiblité de rechercher des dossiers.
\ No newline at end of file
- ticket #71921 : Affichage : amélioration du chargement du menu à bascule.
\ No newline at end of file
......@@ -78,6 +78,6 @@ class Admin_FeatureController extends ZendAfi_Controller_Action {
if((new Class_Feature())->stopTracking())
$this->_helper->notify($this->_('Vous ne serez plus notifié des nouvelles fonctionnalités jusqu\'à la prochaine mise à jour du logicel.'));
$this->_redirectToIndex();
$this->_redirectToReferer();
}
}
\ No newline at end of file
- ticket #71738 : Système : Amélioration des performances du patch SQL 337
\ No newline at end of file
......@@ -9,5 +9,5 @@ define('BASE_URL', $cosmo_path->getBaseUrl());
require_once($basePath.'/../storm_init.php');
(new Class_Migration_ScriptPatchs())->run();
(new Class_Migration_ScriptPatchs())->runFrom(262);
?>
\ No newline at end of file
......@@ -158,7 +158,7 @@ class Class_AlbumRessource extends Storm_Model_Abstract {
* @return String
*/
public function getAuteur() {
return $this->getAlbum()->getAuteur();
return $this->getAlbum()->getMainAuthorName();
}
......
......@@ -164,10 +164,10 @@ class Class_Feature {
protected function _renderContent($features) {
$buttons = [sprintf('<button class="admin-button" onclick="window.open(\'%s\');">%s</button>',
Class_Url::absolute(['module' => 'admin',
'controller' => 'feature',
'action' => 'index'], null, true),
$buttons = [sprintf('<button class="admin-button" onclick="window.open(\'%s\', \'_top\');">%s</button>',
Class_Url::absolute(['module' => 'admin',
'controller' => 'feature',
'action' => 'index'], null, true),
$this->_('En savoir plus')),
sprintf('<button class="admin-button" onclick="window.open(\'%s\', \'_top\')">%s</button>',
......
......@@ -33,6 +33,12 @@ class Class_Migration_ScriptPatchs {
}
public function runFrom($patch_level, $force = false) {
Class_CosmoVar::setValueOf('patch_level', $patch_level);
$this->run($force);
}
public function runTo($patch_level) {
$this->migration = (new Class_Migration_Patchs());
$this->migration->setLastPatchNumber($patch_level)->acceptVisitor($this);
......
......@@ -43,8 +43,6 @@ class ZendAfi_Form_Admin_FileManager_Import extends ZendAfi_Form {
$extensions = Class_AdminVar::get('ALLOWED_FILES_EXTENSIONS_FOR_IMPORT');
return $element
->addValidator((new Zend_Validate_Regex(Class_FileManager::REGEX_NAME))
->setMessage($form->_('Le nom peut contenir uniquement des lettres, des chiffres et les caratères "_", "-", " ", ".". Exemple : "mon_fichier.jpg"')))
->addValidator((new Zend_Validate_File_Count(1))
->setMessage($form->_('Un seul fichier doit être transféré.')))
......
......@@ -106,7 +106,7 @@ class ZendAfi_View_Helper_Accueil_MenuVertical extends ZendAfi_View_Helper_Accue
Class_ScriptLoader::getInstance()
->addOPACScript('toggle_menu.js')
->addJQueryReady(sprintf('$("#header #boite_%d").toggle_menu_slider();', $this->id_module));
->addJQueryReady(sprintf('$(\'#boite_%s\').toggle_menu_slider();', $this->id_module));
if(Class_Profil::getCurrentProfil()->isResponsive())
return Class_ScriptLoader::getInstance()
......
......@@ -53,7 +53,7 @@ class ZendAfi_View_Helper_Admin_FileManager_File extends ZendAfi_View_Helper_Bas
if($file->isFile())
$dt = array_merge($dt,
[$this->_tag('dt', $this->_('Url public :')),
[$this->_tag('dt', $this->_('URL publique :')),
$this->_tag('dd', urldecode($url))]);
$dl = $this->_tag('dl', implode(array_filter($dt)));
......
......@@ -81,8 +81,8 @@ class Bokeh_Engine {
function setupConstants() {
defineConstant('BOKEH_MAJOR_VERSION','7.11');
defineConstant('BOKEH_RELEASE_NUMBER', BOKEH_MAJOR_VERSION . '.21');
defineConstant('BOKEH_MAJOR_VERSION','7.12');
defineConstant('BOKEH_RELEASE_NUMBER', BOKEH_MAJOR_VERSION . '.1');
defineConstant('BOKEH_REMOTE_FILES', 'http://git.afi-sa.fr/afi/opacce/');
......
......@@ -5,8 +5,9 @@ $(document).ready(function() {
$(this).toggleClass('show_menu');
});
$("div:not(.boite)[class*='menu_horizontal'] *, .menu_vertical.toggle_menu * ")
$("div:not(.boite)[class*='menu_horizontal'] *, .menu_vertical.toggle_menu *")
.not('.configuration_module *,[class*="edit_"], [class*="edit_"] *')
.not('.menu_vertical.toggle_menu h1')
.click(function(e) {
e.stopImmediatePropagation();
});
......
(function ( $ ) {
$.fn.toggle_menu_slider = function () {
var html = $(this);
html.find('h1').bind('click', function(event) {
html.find('h1').click(function(event) {
html.toggleClass('show_menu');
html.find('a').removeAttr('onclick');
});
......
......@@ -545,27 +545,30 @@ class BibNumeriqueControllerViewCategorieActionLaBibleDeSouvignyTest extends Bib
abstract class BibNumeriqueControllerAlbumMultiMediasTestCase extends AbstractControllerTestCase {
protected $_xpath;
protected
$_xpath,
$_storm_default_to_volatile = true;
public function setUp() {
parent::setUp();
$this->_xpath = new Storm_Test_XPathXML();
Class_Album::setTimeSource(new TimeSourceForTest('2012-02-17 10:00:00'));
$album = Class_Album::newInstanceWithId(999)
->beDiaporama()
->setNotes(['305$a' => 'XXe siècle',
'200$b' => 'Parchemin',
'316$a' => 'Reliure restaurée en 1980 par la BN.'])
->setTitre('Plein de medias')
->setSousTitre('Pour tester')
->setAuteur('Suzanne Collins')
->addAuthor('Suzanne Collins')
->setAnnee(2001)
->setNoticeId(500)
->setIdOrigine("A888")
->setCote('50')
->setDateMaj('2012-02-17 10:00:00')
->setDescription('<p>pour passer la soirée</p>')
->setNotes(['305$a' => 'XXe siècle',
'200$b' => 'Parchemin',
'316$a' => 'Reliure restaurée en 1980 par la BN.'])
->addEditor('Gallimard')
->setIdLang('lat')
->setDroits('CC-BY-SA')
......@@ -611,6 +614,7 @@ abstract class BibNumeriqueControllerAlbumMultiMediasTestCase extends AbstractCo
Class_AlbumRessource::newInstanceWithId(9)
->setFichier('the_prophecy.mp3')
->setOrdre(7)]);
$album->assertSave();
Storm_Test_ObjectWrapper::onLoaderOfModel('Class_AlbumCategorie')
->whenCalled('findAllBy')
......
......@@ -2625,7 +2625,7 @@ class ProfilOptionsControllerToggleMenuAndResponsiveOptionsTest extends ProfilOp
/** @test */
public function toggleMenuCallFunctionShouldBePresent() {
$this->assertXPathContentContains('//script', '$("#header #boite_1").toggle_menu_slider();');
$this->assertXPathContentContains('//script', '$(\'#boite_1\').toggle_menu_slider();');
}
......
......@@ -26,7 +26,7 @@ class MigrationFixture {
Class_Migration_Patchs::setFileSystem(Storm_Test_ObjectWrapper::mock()
->whenCalled('glob')
->answers([]
));
));
}
public static function mockFileSystemWithSql() {
......@@ -38,20 +38,34 @@ class MigrationFixture {
'./cosmogramme/sql/patch/patch_14.php',
'./cosmogramme/sql/patch/patch_12.sql',
'./cosmogramme/sql/patch/patch_5.sql'
]
)
'./cosmogramme/sql/patch/patch_05.sql'
])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_14.sql')
->answers([ 'another working update;'])
->with('./cosmogramme/sql/patch/patch_03.sql')
->answers([ 'runFrom update working;'])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_05.sql')
->answers([ 'runFrom update working;'])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_10.sql')
->answers([ 'runFrom update working;'])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_12.sql')
->answers([ 'update working;'])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_13.sql')
->answers(['update not working;',
'-- commented update;',
'another update;'])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_12.sql')
->answers([ 'update working;'])
->with('./cosmogramme/sql/patch/patch_14.sql')
->answers([ 'another working update;'])
->whenCalled('sha1_file')
->willDo(function() { return uniqid();} )
......@@ -63,14 +77,14 @@ class MigrationFixture {
$mock_sql = Storm_Test_ObjectWrapper::mock();
$mock_sql->whenCalled('execute')
->with('update not working;')
->willDo(function() {throw new CustomException('database error' , '666');})
->whenCalled('execute')
->with('update working;')
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1);
->with('update not working;')
->willDo(function() {throw new CustomException('database error' , '666');})
->whenCalled('execute')
->with('update working;')
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1);
Zend_Registry::set('sql', $mock_sql);
Class_Systeme_Include::setInstance($_mock_system_include);
......@@ -87,7 +101,7 @@ class MigrationFixture {
'./cosmogramme/sql/patch/patch_12.sql',
'./cosmogramme/sql/patch/patch_15.sql',
'./cosmogramme/sql/patch/patch_5.sql'
])
])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_12.sql')
......@@ -124,11 +138,11 @@ class MigrationFixture {
$mock_sql = Storm_Test_ObjectWrapper::mock();
$mock_sql->whenCalled('execute')
->with('update working;')
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1);
->with('update working;')
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1);
Zend_Registry::set('sql', $mock_sql);
}
......@@ -140,31 +154,31 @@ class MigrationFixture {
->whenCalled('glob')
->answers(['./cosmogramme/sql/patch/patch_03.sql',
'./cosmogramme/sql/patch/patch_14.sql',
])
])
->whenCalled('file')
->with('./cosmogramme/sql/patch/patch_14.sql')
->answers([ 'CREATE FUNCTION clean_spaces(str VARCHAR(255)) RETURNS VARCHAR(255) DETERMINISTIC',
'BEGIN',
"while instr(str, ' ') > 0 do",
"set str := replace(str, ' ', ' ');",
"end while;",
"return trim(str);",
'END'
])
'BEGIN',
"while instr(str, ' ') > 0 do",
"set str := replace(str, ' ', ' ');",
"end while;",
"return trim(str);",
'END'
])
->whenCalled('sha1_file')
->answers('bidonquiapaslatetedunchathein')
);
);
$mock_sql = Storm_Test_ObjectWrapper::mock();
$mock_sql->whenCalled('execute')
->with("CREATE FUNCTION clean_spaces(str VARCHAR(255)) RETURNS VARCHAR(255) DETERMINISTIC BEGIN while instr(str, ' ') > 0 do set str := replace(str, ' ', ' '); end while; return trim(str); END")
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1)
->beStrict();
->with("CREATE FUNCTION clean_spaces(str VARCHAR(255)) RETURNS VARCHAR(255) DETERMINISTIC BEGIN while instr(str, ' ') > 0 do set str := replace(str, ' ', ' '); end while; return trim(str); END")
->answers(true)
->whenCalled('query')
->with("SHOW TABLES LIKE 'patch_hash'")
->answers(1)
->beStrict();
Zend_Registry::set('sql', $mock_sql);
......
......@@ -100,7 +100,14 @@ class Class_MigrationScriptPatchsTest extends MigrationTestCase {
/** @test */
public function runForcePatchShouldUpgradePatchLevelTo14() {
(new Class_Migration_ScriptPatchs())->run(true);
$this->assertEquals(14,Class_CosmoVar::find('patch_level')->getValeur());
$this->assertEquals(14, Class_CosmoVar::find('patch_level')->getValeur());
}
/** @test */
public function runFromPatchShouldUpgradePatchLevelTo14() {
(new Class_Migration_ScriptPatchs())->runFrom(1, true);
$this->assertEquals(14, Class_CosmoVar::find('patch_level')->getValeur());
}
}
......
Markdown is supported
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